#include <stdio.h>
#include <assert.h>
#include <string.h>
+#include <locale.h>
using namespace pinyin;
bool SystemTableInfo::load(const char * filename) {
reset();
+ char * locale = setlocale(LC_NUMERIC, "C");
+
FILE * input = fopen(filename, "r");
if (NULL == input) {
fprintf(stderr, "open %s failed.\n", filename);
/* postfix reserved tables. */
postfix_tables();
+
+ setlocale(LC_NUMERIC, locale);
+
return true;
}
bool UserTableInfo::load(const char * filename) {
reset();
+ char * locale = setlocale(LC_NUMERIC, "C");
+
FILE * input = fopen(filename, "r");
if (NULL == input) {
fprintf(stderr, "open %s failed.", filename);
fclose(input);
+ setlocale(LC_NUMERIC, locale);
+
return true;
}
bool UserTableInfo::save(const char * filename) {
+ char * locale = setlocale(LC_NUMERIC, "C");
+
FILE * output = fopen(filename, "w");
if (NULL == output) {
fprintf(stderr, "write %s failed.\n", filename);
fclose(output);
+ setlocale(LC_NUMERIC, locale);
+
return true;
}
*/
#include <stdio.h>
+#include <locale.h>
#include "pinyin_internal.h"
int main(int argc, char * argv[]) {
+ setlocale(LC_ALL, "");
+
SystemTableInfo system_table_info;
bool retval = system_table_info.load("../../data/table.conf");