4

我正在使用 org.json 来解析和编写 json。在序列化(即转换为字符串)时,我看到 json 对象添加了一个额外的转义字符。如果可能的话,如何避免这种情况?

  String jsonStr = "{\"AD\":\"</p>\"}";

  JSONObject jsonObject = new JSONObject(jsonStr);
  System.out.println(jsonStr);
  System.out.println(jsonObject.toString());

输出:

{"AD":"</p>"}
{"AD":"<\/p>"}
4

1 回答 1

0

许多其他 StackOverflow 帖子指出发生这种情况是因为 (1) JSON 规范允许这样做,并且 (2) 它允许将 JSON 字符串按原样插入某些 XML/HTML 上下文中,否则这些上下文不允许字符串在"</"他们里面。

如果这会导致问题,我会寻找更好的 Java JSON 库——它可以让您定义更多的字符转义选项。

于 2013-09-19T19:38:08.423 回答