我是Java的新手,我正在研究如何在java中解析json到object。
我有以下Json内容:
{
"objects": [
{
"type": "image",
"left":0,
"top":0,
"width":787,
"height":1165,
"src":"image/16_011020002_000_bk.PNG",
"replaceable":false,
"lockObject":false
},
{
"type": "image",
"left":70,
"top":54,
"width":669,
"height":469,
"src":"image/16_011020002_000_il.PNG",
"replaceable":false,
"lockObject":false
},
{
"left":70,
"top":54,
"width":669,
"height":469,
"direction":"v",
"fontFamily":"KaitiEG4-Medium-SJIS",
"fill":"#55626C",
"text":"旧年中は大変お世話になり\nありがとうございました\n本年も相変わらずご支援のほど\nお願い申し上げます\n\n 平成二十八年 元旦",
"textAlign":"left",
"lockObject":false
},
{
"left":70,
"top":54,
"width":669,
"height":469,
"direction":"v",
"fontFamily":"LeisuEG4-Medium-SJIS",
"fill":"#55626C",
"text":"謹んで\n 初春のお慶びを\n 申し上げます",
"textAlign":"left",
"lockObject":false
}
]
}
如何为这个json设计一个对象以及如何将json解析为该对象? 帮帮我这个问题。谢谢!
答案 0 :(得分:6)
使用某种JSON解析器。
GSON
https://github.com/google/gson
或杰克逊
http://www.mkyong.com/java/how-to-convert-java-object-to-from-json-jackson/
答案 1 :(得分:2)
我希望它能帮助你......! 使用杰克逊 -
JSONArray objects=new JSONObject(jsondata).getJSONArray("objects");
for(int i=0;i<objects.length();i++){
JSONObject object=objects.getJSONObject(i);
System.out.println("value of left=="+object.getString("left"));
System.out.println("value of top=="+object.getString("top"));
}
答案 2 :(得分:0)
根据你的问题,它似乎是一个表示object类型的json数据的数组。
要解析数据,我们可以使用d__k提到的上述两个解析器。
I have been using Jackson and we have a ObjectMapper class which converts the data in the specified type. We can use ObjectMapper#readValue to read the data into java object.
请在this链接找到更多信息。