您的位置:首页 > Web前端 > JavaScript

对于简单的json数据和Stirng的转换和操作

2013-11-06 12:49 621 查看
以下方法都是转换和操作json

1).将字符串拼接成json格式的数据

2).将json格式的数据转换成字符串

3).将String 数据(格式类似json)通过gson转换成json格式进行读取

* [{"name":"gaofeng","age":"20"},{"name":"myname","age":"22"}] 需要通过JSONArray来解析

* 这种比较解析比较复杂

* {"country":{

"city":{

"persions":[

{"name":"gaofeng","age":"22"},

{"name":"wangwu","age":"20"},

{"name":"lisi","age":"22"},

]

}

}

}

4).读取json的数据

5).直接将String类型转换成json格式的数据

public static void main(String args[]){
int opertype = 0;
String appid = "20018500000003200*";
String appname = "UC数据同步1CCwwwC";
String json_str="";
String codemsg="{\"code\":\"9999\",\"errmsg\":\"??????\"}";
/**
* 1).将字符串拼接成json格式的数据
* 2).将json格式的数据转换成字符串
* 3).将String 数据(格式类似json)通过gson转换成json格式进行读取
*  [{"name":"gaofeng","age":"20"},{"name":"myname","age":"22"}]  需要通过JSONArray来解析
*  这种比较解析比较复杂
*  {"country":{
"city":{
"persions":[
{"name":"gaofeng","age":"22"},
{"name":"wangwu","age":"20"},
{"name":"lisi","age":"22"},
]
}
}
}
* 4).读取json的数据
* 5).直接将String类型转换成json格式的数据
* */
//new一个Gson对象,用来对json数据进行解析,另外一种解析方式依赖以下2个包:net.sf.json-lib/net.sf.ezmorph (fromObject方法)
Gson gson= new Gson();
//new一个JSONObject对象
JSONObject jsonobject = new JSONObject();

try {

jsonobject.put("opertype", opertype);
jsonobject.put("appid", appid);
jsonobject.put("appname", appname);

System.out.println("json数据_jsonobject:"+jsonobject);

json_str=jsonobject.toString();
System.out.println("字符串_json_str:"+json_str);

System.out.println("String类型的数据:"+codemsg);

//将String格式的数据通过一个Code_msg对象来映射,转换为json格式,便于进行操作和读取
Code_msg code_msg = new Code_msg();
code_msg=gson.fromJson(codemsg, Code_msg.class);

System.out.println("转换后的json取值code:" + code_msg.get_code());
System.out.println("转换后的json取值errmsg:" + code_msg.get_errmsg());

int aa1=jsonobject.getInt("opertype");
String aa2=jsonobject.getString("appid");
String aa3=jsonobject.getString("appname");

System.out.println("输出JSON各个类型的值:"+"opertype:"+aa1+","+"appid:"+aa2+","+"appname:"+aa3);

//直接将String类型转换成json格式的数据
JSONObject obj= new JSONObject(codemsg);
System.out.println("obj的josn:"+obj);

} catch (JSONException e) {
e.printStackTrace();
}

}


辅助Code_msg类
private String code;
private String errmsg;

public void code( String code){
this.code=code;
}
public String get_code(){
return code;
}
public void errmsg( String errmsg){
this.code=errmsg;
}
public String get_errmsg(){
return errmsg;
}

结果输出:

json数据_jsonobject:{"appname":"UC数据同步1CCwwwC","appid":"20018500000003200*","opertype":0}

字符串_json_str:{"appname":"UC数据同步1CCwwwC","appid":"20018500000003200*","opertype":0}

String类型的数据:{"code":"9999","errmsg":"??????"}

转换后的json取值code:9999

转换后的json取值errmsg:??????

输出JSON各个类型的值:opertype:0,appid:20018500000003200*,appname:UC数据同步1CCwwwC

obj的josn:{"code":"9999","errmsg":"??????"}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: