java如何从utf8表示的字符串中获取源字符串
我有一个来自互联网的页面,内容是utf-8编码的字符串,可能类似于:
{"has_more": true, "items": [{"body": "\u6ca1\u6709\u4f20\u8bf4\u4e2d\u7684\u90a3\u4e48\u597d",...}
我试着使用URL解码器。decode(),但它不工作,它输出的正是输入的内容。有什么建议吗?这是utf-8显式编码的字符串对象,它不是inputStream或其他东西。我做了一些搜索工作,发现很少相关
# 1 楼答案
可以使用Gson将它们转换为映射
# 2 楼答案
是的,它的JSON(JavaScript对象表示法)是一种轻量级数据交换格式
通过http://www.json.org/java/
# 3 楼答案
源代码表示法是u编码的(
\uXXXX
),但字符串本身是一个不可区分的普通字符串(Java/JavaScript),如\n
或\t
JDK有一个转换工具:
# 4 楼答案
这就是JSON编码,它以特定的方式处理特定的字符。它不是URL编码,因此不起作用
为什么不尝试使用JSON库呢json simple或GSON是一个很好的开始
好奇的是:这里描述了您看到的编码:RFC4627
# 5 楼答案
查看Java- JSON in Java 中的libs