jsonjson.org,org.json.JSONException
冲突包的下载到传送非里面去下载好了http://mvnrepository.com/artifact/org.json/json/20170516
直接上代码分析代码最好不过了?自己拿去运行分析一下就是你自己的东西了。
导入Java。util。ArrayList
导入Java。util。hashmap
导入Java。util。列表;
导入Java。util。地图;
导入org。JSON。JSON数组;
导入org。JSON。JSON异常;
导入org。JSON。JSON对象;
/**
* 重点:JSONObject对应集合地图,JSONArray对应集合列表。
* 用数据类(fastjson和orgjson)库处理复杂的集合时,要将集合直接放到价值处,不能将其转换为数据字符串放到价值处,
* 如果将其转换为字符串放到价值处,最终生成的数据字符串会带有转义字符。
*/
公共类OrgjsonUtil {
公共静态void main(String[] args) {
尝试{
//JSONObject的用法。
系统。出去。println(-test1-);
testJsonObject();
//JSONArray的用法。
系统。出去。println(-test 2-);
testJsonArray();
//JSONObject,JSONArray和集合的复杂用法。
系统。出去。println(-test 3-);
测试复合体();
//JSONObject,JSONArray和集合的复杂用法。
系统。出去。println(-test 4-);
测试复合体2();
} catch(异常e) {
System.out.println(测试发生异常: e);
}
}
公共静态void testJsonObject()引发JSONException {
JSON object jo=new JSON object();
jo.put(username , IluckySi );
jo.put(年龄,27);
jo.put(sex ,true);
地图字符串,String skill=new HashMap String,String();
skill.put(java ,不错);
skill.put(javascript ,凑合);
skill.put(jquery ,挺好);
jo.put(技能,技巧);
字符串username=jo。getstring(“用户名”);
int age=jo。getint( age );
布尔性别=jo。获取布尔值(“性别”);
JSON对象技能2=新JSON对象(jo。getjson对象(“skill”).toString());
系统。出去。println(技能二);
System.out.println(用户名,年龄=年龄,性别=(性==真?男 : 女) , 技能如下:);
/*映射字符串,对象名称=新哈希表字符串,对象
names=jo.getJSONObject(skill ).toMap();
for (String key : names.keySet()) {
String value=names.get(key).toString();
System.out.println(Key= key ,Value= Value);
}
*/
string[]names=JSON对象。getnames(技能2);
对于(字符串名称:名称){
系统。出去。println(name):技能2。getstring(name));
}
}
公共静态void testJsonArray()引发JSONException {
JSON数组ja=new JSON数组();
JSON object jo=new JSON object();
jo.put(username , IluckySi );
jo.put(年龄,27);
jo.put(sex ,true);
是啊。put(jo);
JSON对象jo2=new JSON对象();
jo2.put(用户名,‘iluckys 2’);
jo2.put(年龄,28);
jo2.put(性,假);
是啊。put(jo2);
for(int I=0;我知道。长度();i ) {
JSON对象j=(JSON对象)ja。get(I);
string username=j . getstring( username )。
int age=j . getint( age );
布尔性别=j .获取布尔(性别);
System.out.println(用户名,年龄=年龄,性别=(性==真?男 : 女));
}
}
公共静态void testComplex()引发JSONException {
JSON object jo=new JSON object();
jo.put(result , success );
列表映射对象,对象列表=新数组列表映射对象,Object();
地图对象,对象用户1=新哈希表对象,Object();
user1.put(name , name 1 );
user1.put(password , password 1 );
列表。添加(用户1);
地图对象,对象用户2=新哈希表对象,Object();
user2.put(name , name 2 );
user2.put(password , password 2 );
列表。添加(用户2);
jo.put(message ,list);
字符串send=jo。tostring();
System.out.println(要测试的消息发送);
发送(发送);
}
私有静态无效发送(字符串发送)引发JSONException {
JSON对象jo=新的JSON对象(发送);
字符串结果=jo。getstring(“result”);
系统。出去。println( result= result);
系统。出去。println(jo。getjsonarray( message );
JSON数组ja=jo。getjson数组(“message”);
for(int I=0;我知道。长度();i ) {
JSON对象j=(JSON对象)ja。get(I);
string name=j . getstring( name );
string password=j . getstring( password );
System.out.println(name= name ,password= password);
}
}
公共静态void testComplex2()引发JSONException {
JSON object jo=new JSON object();
jo.put(result , success );
JSON对象消息=新JSON对象();
列表映射对象,对象列表=新数组列表映射对象,Object();
地图对象,对象用户1=新哈希表对象,Object();
user1.put(name , name 1 );
user1.put(password , password 1 );
列表。添加(用户1);
地图对象,对象用户2=新哈希表对象,Object();
user2.put(name , name 2 );
user2.put(password , password 2 );
列表。添加(用户2);
message.put(message ,list);
jo.put(消息,消息。tostring());//注意:如果直接写消息,也不会有转义字符。
字符串send=jo。tostring();
System.out.println(要测试的消息发送);
发送2(发送);
}
私有静态无效发送2(字符串发送)引发JSONException {
JSON对象jo=新的JSON对象(发送);
字符串结果=jo。getstring(“result”);
系统。出去。println( result= result);
系统。出去。println(jo。getstring(“message”).toString());
JSON对象消息=新的JSON对象(jo。getstring( message ));
JSON数组消息2=消息。getjson数组(“message”);
for(int I=0;一.信息2。长度();i ) {
JSON对象j=(JSON对象)消息2。get(I);
string name=j . getstring( name );
string password=j . getstring( password );
System.out.println(name= name ,password= password);
}
}
}
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。