【发布时间】:2013-02-25 13:56:54
【问题描述】:
我正在使用库org.json。
我有一个这样的字符串(引号不能出现在field_n)
{field1=value1, field2=value2} (say it `val`)
此字符串来自Hashtable<String, Object>。
我从该字符串创建一个JSONObject,获得:
{"field1":"value1", "field2":"value2"}
当值中出现value_n 引号(或换行符和回车符)时会出现问题。
我试过用这种方式转义字符串:
value = value.replace("\\", "\\\\");
value = value.replace("\"", "\\\"");
value = value.replace("\r", "\\r");
value = value.replace("\n", "\\n");
但当我尝试使用以下方法创建 JSONObject 时,我总是获得org.json.JSONException: Expected a ',' or '}' at ... [character ... line 1]:
JSONObject json = new JSONObject(val);
【问题讨论】: