2

我使用 protobuf 来读写配置文件。但我发现中文字符无法正确写入文件。

编码代码:

zrd::Config cfg;
zrd::Market *market = nullptr;
market = cfg.add_market();
market->set_id("11");
market->set_name("清江冷链市场");
market->set_district("六合区");

string content;
google::protobuf::TextFormat::PrintToString(cfg, &content);

运行完成后,内容如下:

市场 {\n id: \"11\"\n 名称: \"\346\270\205\346\261\237\345\206\267\351\223\276\345\270\202\345\ 234\272\"\n区:\"\345\205\255\345\220\210\345\214\272\"\n}

为什么汉字是这样转换的?当我使用ofstream将内容写入文件时,这样的汉字不方便阅读。但probobuf可以成功解码。

我想知道是否有办法以正确的方式保存汉字?

4

0 回答 0