1.新建一个Java项目,项目名为:TestJsonJ.
2.将下载好的gson-2.2.2jar导入到项目中。
步骤:a.创建一个libs文件夹。
b.将gson-2.2.2jar放到libs目录下。
c.在jar文件上点击右键—>Build path—>Add to Build path.
3.将test.json文本放到项目根目录下。
test.json文本中的内容:
{
"cat":"it",
"languages":[
{"id":1,"n":"Eclipse","name":"Java"},
{"id":2,"n":"XCode","name":"Swift"},
{"id":3,"n":"Visual Studio","name":"C#"}
],
}
4.具体Java代码实现:
public class ReadJson {
public static void main(String[] args) {
try {
//1.创建json解析器
JsonParser parser=new JsonParser();
//2.对test.json文本解析解析。
JsonObject object=(JsonObject) parser.parse(new FileReader("test.json"));
//3."cat"是一个object对象,可直接进行解析。
System.out.println("cat="+object.get("cat").getAsString());
//4.“languages”是一个数组,需使用JsonArray解析解析
JsonArray array=object.get("languages").getAsJsonArray();
//5.遍历数组,对数组中的每一个对象解析解析
for (int i = 0; i < array.size(); i++) {
System.out.println("--------");
JsonObject subObject = array.get(i).getAsJsonObject();
//6.对具体的一个对象进行解析。如:{"id":1,"n":"Eclipse","name":"Java"},
System.out.println("id="+subObject.get("id").getAsInt());
System.out.println("n="+subObject.get("n").getAsString());
System.out.println("name="+subObject.get("name").getAsString());
}
} catch (JsonIOException e) {
e.printStackTrace();
} catch (JsonSyntaxException e) {
e.printStackTrace();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
5.运行即可得出数据,数据如下:
{"cat":"it","languages":[{"id":"1","name":"java","ide":"eclipse"},{"id":"2","name":"android","ide":"as"},{"id":"3","name":"ios","ide":"XCode"}]}
作为一个小白,把平时练习的小demo写下来,加深下自己的印象,也希望其他的小白能共同学习,更希望大神们能够指导问题。