【Json-RPC框架】:Json序列化后,不能显式中文?增长emitUTF8配置 ...

打印 上一主题 下一主题

主题 1517|帖子 1517|积分 4551

解决办法:
给工厂类设置emitUTF8=true。
   swbuilder.settings_["emitUTF8"]=true;
  1. static bool serialize(const Json::Value &val,  std::string &body) {
  2.     std::stringstream ss;
  3.     Json::StreamWriterBuilder swbuilder;
  4.     //配置信息
  5.     swbuilder.settings_["emitUTF8"]=true;
  6.     std::unique_ptr<Json::StreamWriter> sw(swbuilder.newStreamWriter());
  7.     int n=sw->write(val,&ss);
  8.     if(n!=0)
  9.     {
  10.         LOG("sw->write(val,&ss) error!");
  11.         return false;
  12.     }
  13.     body=ss.str();
  14.     return true;
  15. }
复制代码

这就是在用中间类Value存储的时候,存的是中文,但是在write转化的时候,UTF8字符转化成为了
unicode的情势。
   

  • \u6c34 对应的 Unicode 字符是 "水"。
  • \u679c 对应的 Unicode 字符是 "果"。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

大号在练葵花宝典

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表