alibaba / fastjson

FASTJSON 2.0.x has been released, faster and more secure, recommend you upgrade.
https://github.com/alibaba/fastjson2/wiki/fastjson_1_upgrade_cn
Apache License 2.0
25.73k stars 6.5k forks source link

颜文字转法 #877

Open nei10u opened 7 years ago

nei10u commented 7 years ago

string = "{\"description\":\"\\(^o^)/\"}"; JSONObject json = JSON.parseObject(string);

Feature应该用哪个?

Exception in thread "main" com.alibaba.fastjson.JSONException: unclosed string : ( at com.alibaba.fastjson.parser.JSONLexerBase.scanString(JSONLexerBase.java:967) at com.alibaba.fastjson.parser.DefaultJSONParser.parseObject(DefaultJSONParser.java:424) at com.alibaba.fastjson.parser.DefaultJSONParser.parse(DefaultJSONParser.java:1298) at com.alibaba.fastjson.parser.DefaultJSONParser.parse(DefaultJSONParser.java:1264) at com.alibaba.fastjson.JSON.parse(JSON.java:125) at com.alibaba.fastjson.JSON.parse(JSON.java:181) at com.alibaba.fastjson.JSON.parseObject(JSON.java:185)

nei10u commented 7 years ago
    String string = "{\"description\":\"\\\\(^o^)/\"}";
    JSONObject json = JSON.parseObject(string);
    System.out.println(JSONObject.toJSONString(json).replace("\\\\","\\"));

这种方式感觉不优雅。。。

githublaohu commented 7 years ago

建议的方式。是在前段转义,然后在进行传输。