使用 json.simple 将字符串转换为 json 对象
Posted
技术标签:
【中文标题】使用 json.simple 将字符串转换为 json 对象【英文标题】:Converting string to json object using json.simple 【发布时间】:2015-08-25 18:03:21 【问题描述】:我正在使用org.json.simple.JSONObject
。
我想将string
转换为Json object
。
String value=request.getParameter("savepos");
JSONObject jsonObject = (JSONObject) JSONValue.parse(value);
它不起作用。为什么?
【问题讨论】:
“但没有成功”并没有告诉我们任何有关失败模式的信息。value
的值是多少?您尝试过的代码会发生什么情况?
“savepos”的 JSON 和 !null 格式是否正确?
如何将Java对象(Sample s = new Sample())转换成JSON字符串?
***.com/questions/5245840/…
【参考方案1】:
试试这个:
JSONParser parser = new JSONParser();
JSONObject json = (JSONObject) parser.parse(stringToParse);
【讨论】:
由于有多个 JSONParser 库,库名称会有所帮助 如何将Java对象(Sample s = new Sample())转成JSON字符串? 我猜这里用的是json.simple Parser。 @MenukaIshan 你可以从org.json.simple.parser.JSONParser
导入json-simple的解析器
为什么所有的例子都如此有限和不完整?不包括导入命名空间,该方法似乎需要一个 try-catch 块,没有示例如何转移回字符串...感谢您的想法,但如果您只是完成了这个想法,它可能会更有帮助...
【参考方案2】:
JSONParser parser = new JSONParser();
JSONObject json = (JSONObject) parser.parse(value);
应该做的工作。
【讨论】:
【参考方案3】:使用 org.json.simple.JSONObject 将字符串转换为 Json 对象
private static JSONObject createJSONObject(String jsonString)
JSONObject jsonObject=new JSONObject();
JSONParser jsonParser=new JSONParser();
if ((jsonString != null) && !(jsonString.isEmpty()))
try
jsonObject=(JSONObject) jsonParser.parse(jsonString);
catch (org.json.simple.parser.ParseException e)
e.printStackTrace();
return jsonObject;
【讨论】:
【参考方案4】:在较新的com.github.cliftonlabs.json_simple
中,代码如下:
JsonObject obj = Jsoner.deserialize(responseString, new JsonObject());
如项目的API docs 中所述
【讨论】:
以上是关于使用 json.simple 将字符串转换为 json 对象的主要内容,如果未能解决你的问题,请参考以下文章
将 node.js 缓冲区转换为字符串,然后转换为 JSON