您的位置:首页 > Web前端 > JavaScript

jsoncpp修改支持中文

2017-08-18 15:44 260 查看
找到该方法codePointToUTF8

往里面增加以下判断

需要增加字符转换则自己加上.

我另外加上了罗马数字 转换

旧版本中访问不存在的元素的时候会崩溃,最新版则抛异常

release版本的时候  优化选项要禁用,否则不会捕捉到异常

//

  else if ((cp >= 0x2E80 && cp <= 0xA4CF) || (cp >= 0xF900 && cp <= 0xFAFF) || (cp >= 0xFE30 && cp <= 0xFE4F) || (cp >= 0xFF00 && cp <= 0xFFEF) || (cp >= 0x2160 && cp <= 0x2169))

  {
 wchar_t src[2] = L"";
 char dest[5] = "";
 src[0] = static_cast<wchar_t>(cp);
 std::string curLocale = setlocale(LC_ALL, NULL);
 setlocale(LC_ALL, "chs");
 wcstombs_s(NULL, dest, 5, src, 2);
 result = dest;
 setlocale(LC_ALL, curLocale.c_str());

  }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: