1:java对象与json串转换:
java对象—json串:
JSONObject JSONStr = JSONObject.fromObject(object)
String str = JSONStr.toString()
json串—java对象:
JSONObject jsonObject = JSONObject.fromObject( jsonString )
Object pojo = JSONObject.toBean(jsonObject,pojoCalss)
2:java数组对象与json串转换:
java数组—json串:
JSONArray arrayStr = JSONArray.fromObject(List<?>)
String str = arrayStr.toString()
json串—java数组:
JSONArray array = JSONArray.fromObject(str)
List<?>list = JSONArray.toList(array, ?.class)
如果不是Android开发环境的话,首先需要引入处理JSON数据的包:json-lib-2.2.3-jdk15.jarJava样例程序如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import net.sf.json.JSONArray
import net.sf.json.JSONObject
public class DoJSON {
public static void main(String[] args) {
JSONArray employees = new JSONArray() //JSON数组
JSONObject employee = new JSONObject()//JSON对象
employee.put("firstName", "Bill")//按“键-值”对形式存储数据到JSON对象中
employee.put("lastName", "Gates")
employees.add(employee) //将JSON对象加入到JSON数组中
employee.put("firstName", "George")
employee.put("lastName", "Bush")
employees.add(employee)
employee.put("firstName", "Thomas")
employee.put("lastName", "Carter")
employees.add(employee)
System.out.println(employees.toString())
for(int i=0i<employees.size()i++) {
JSONObject emp = employees.getJSONObject(i)
System.out.println(emp.toString())
System.out.println("FirstName :\t" + emp.get("firstName"))
System.out.println("LastName : \t" + emp.get("lastName"))
}
}
}
运行效果:
[{"firstName":"Bill","lastName":"Gates"},{"firstName":"George","lastName":"Bush"},{"firstName":"Thomas","lastName":"Carter"}]
{"firstName":"Bill","lastName":"Gates"}
FirstName : Bill
LastName : Gates
{"firstName":"George","lastName":"Bush"}
FirstName : George
LastName : Bush
{"firstName":"Thomas","lastName":"Carter"}
FirstName : Thomas
LastName : Carter