这一周,因为工作的原因,我开始接触json这种主要用来进行数据交换的语言。总的来说,json这种格式的语言要比xml简单,至少看起来规则比较少,xml语言因为扩展性的原因,很多时候都是人为的去制定规则,所以显得比较麻烦。但json不同,键-值对的形式,加上数组以及简单的对象与字符串的转化,使得它非常适合用来进行数据交换。
一、定义
在JSON中,有两种结构:对象和数组
1. 一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间运用 “,”(逗号)分隔。 名称用引号括起来;值如果是字符串则必须用括号,数值型则不须要。例如:
var object={"name":"lxy","age":22,"birthday":"19910102"};
2. 数组是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间运用 “,”(逗号)分隔。
二、转化
1、json字符串--JSONObject对象--字符串
String jsonMessage = "{\"语文\":\"88\",\"数学\":\"78\",\"计算机\":\"99\"}";
String value1 = null;
try
{
//将字符串转换成jsonObject对象
JSONObject myJsonObject = new JSONObject(jsonMessage);
//获取对应的值
value1 = myJsonObject.getString("数学");
}
catch (JSONException e)
{
}
2、java对象--JSONObject对像--json字符串
User user = new User();
user.setName("lxy");
user.setSex(22);
JSONObject myJsonObject = JSONObject.fromObject(user);
System.out.println(jo2.toString()); var jsonArrStr = [{ 'name': '张三', 'age': '20'},{ 'name': '李四', 'age': '18' }];