jsoncpp中文乱码,中文显示为\u问题处理;jsoncpp中文乱码解决;源码方式使用jsoncpp;UTF_8和ASSIC相互转换;

本文介绍了解决jsoncpp中中文转u****问题的方法,包括修改valueToQuotedStringN函数并提供源码使用步骤。同时涵盖UTF_8和ASCII转换,适用于不同编码场景。

一、jsoncpp中文写入为\u****问题处理;jsoncpp中文乱码解决;        

当我们使用jsoncpp读取写入json文件时,会发现明明是中文字符串,但是赋值给Json::Value后却变成\u****这样的了,而且读取出来还是乱码的。

        我经历了各种转码,发现难受啊,根本不行,或者部分汉字对的,部分不正确,翻遍了整个百度,有修改

        最终通过调试源码发现,中文被转码了,暂时没看明白这样做为什么;所以采用如下处理即可解决:(首先说明我将jsoncpp库弄成了源代码方式使用,即只有jsoncpp.cpp、jsoncpp.h两个文件了,后面将说如何操作)

1、找到jsoncpp.cpp里面的valueToQuotedStringN函数,找到最后switch的default;

static String valueToQuotedStringN(const char* value, unsigned length,
                                   bool emitUTF8 = false)

2、如下图将原来的代码注释掉,换成新的那一行代码;

         到这里,恭喜你哈哈中文不再

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值