这段时间我们在做一个英语翻译软件的小小小APP,涉及到了对Json数据的解析,所以特地来总结一下!
假设我们要对如下数据进行解析,其实在平时,返回的Json数据是很乱的,很难分清数据的关系,这是经过相关工具美化后的结果
{
"translation": [
"爱"
],
"basic": {
"us-phonetic": "lʌv",
"phonetic": "lʌv",
"uk-phonetic": "lʌv",
"explains": [
"n. 恋爱;亲爱的;酷爱;喜爱的事物",
"vt. 喜欢;热爱;爱慕",
"vi. 爱",
"n. (Love)人名;(英)洛夫"
]
},
"web": [
{
"value": [
"爱情",
"爱",
"爱"
],
"key": "Love"
},
{
"value": [
"无尽的爱",
"蓝色生死恋",
"不了情"
],
"key": "Endless Love"
},
{
"value": [
"早恋",
"青春期恋爱",
"初恋"
],
"key": "puppy love"
}
]
}
我们把数据定义为一个字符串,加入转义字符之后就成了这样,有点乱是吧,所以我们根据上图分析就好啦。
Json数据说白了就是对象和数组的相互嵌套,那么我们开始吧!
String st = "{"translation":["爱"],"basic":{"us-phonetic":"lʌv","phonetic":"lʌv","uk-phonetic":"lʌv","explains":["n. 恋爱;亲爱的;酷爱;喜爱的事物","vt. 喜欢;热爱;爱慕","vi. 爱","n. (Love)人名;(英)洛夫"]},"query":"love","errorCode":0,"web":[{"value":["爱情","爱","爱"],"key":"Love"},{"value":["无尽的爱","蓝色生死恋","不了情"],"key":"Endless Love"},{"value":["早恋","青春期恋爱","初恋"],"key":"puppy love"}]}";
JSonObject str = JSONObject.fromObject(st); //json数据的最外层肯定是一个对象,参数为字符串
//对象str又分为3部分:translation,basic,web
if(str.has("translation")){
JSonArray tr = str.getJSonArray("translation"); //translation是一个json数组
for(int i = 0 ;i
到这里就解析完啦!
以上这篇使用Java进行Json数据的解析(对象数组的相互嵌套)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持考高分网。



