JSON in Java : 使用编码的 JSON 文件并保存它
JSON in Java : Using encoded JSON files and keeping it
我使用 json- 简单地从 JSON 文件中读取,以改变里面的属性
并将它们写回文件。这一行:
{"username": "M\u00e4nnlich2", "url": "http://www.dslr-forum.de/showthread.php?t=1303001"}
问题:
当我将它们加载到 JSONObject:
时,我将其作为地图获取
{"username": "Männlich2", "url":"http:\/\/www.dslr-forum.de\/showthread.php?t=1303001"}
我想保留编码 "M\u00e4nnlich2" 并且 url 不应该被转义。
这正常吗?当我将编码解析为 JSON 对象时,如何保留编码?
或者我应该使用不同的 JSON 库?
这是一些示例代码:
BufferedReader bfr = new BufferedReader(
new InputStreamReader(
new FileInputStream("tt"), "UTF8"));
JSONParser parser=new JSONParser();
JSONObject root=(JSONObject)parser.parse(bfr);
String jsonText = root.toJSONString();
//Here the String has lost the encoding
这是绝对正确的。 JSON 一旦转换为内部表示,就无法记住原始格式。没有图书馆会有所帮助。
实际上 JSON 并没有那么多,只是这两个序列导致相同的字符串...
我使用 json- 简单地从 JSON 文件中读取,以改变里面的属性 并将它们写回文件。这一行:
{"username": "M\u00e4nnlich2", "url": "http://www.dslr-forum.de/showthread.php?t=1303001"}
问题: 当我将它们加载到 JSONObject:
时,我将其作为地图获取{"username": "Männlich2", "url":"http:\/\/www.dslr-forum.de\/showthread.php?t=1303001"}
我想保留编码 "M\u00e4nnlich2" 并且 url 不应该被转义。
这正常吗?当我将编码解析为 JSON 对象时,如何保留编码? 或者我应该使用不同的 JSON 库?
这是一些示例代码:
BufferedReader bfr = new BufferedReader(
new InputStreamReader(
new FileInputStream("tt"), "UTF8"));
JSONParser parser=new JSONParser();
JSONObject root=(JSONObject)parser.parse(bfr);
String jsonText = root.toJSONString();
//Here the String has lost the encoding
这是绝对正确的。 JSON 一旦转换为内部表示,就无法记住原始格式。没有图书馆会有所帮助。
实际上 JSON 并没有那么多,只是这两个序列导致相同的字符串...