JSON

如何用com.google.gson包将json数据文件转换成List

字号+ 作者:H5之家 来源:H5之家 2015-10-17 08:32 我要评论( )

如何用com.google.gson包将json数据文件转换成List-JavaScript技术-Java技术狂人

[b][size=18px]data.json文件内容如下:
[/size][/b][code][{"name":"狩猎者",
"age":98,
"tel":"13957809999",
"address":"中国湖南衡阳"},
{"name":"飞鱼",
"age":9,
"tel":"13957808888",
"address":"中国浙江宁波"}][/code]
java程序如下:
[code]public static void readDataFromJson(){
//读取json文件,保存到String json中
String fileName="c:/temp/data.json";
File file=new File(fileName);
StringBuffer sb = new StringBuffer() ;
String sJson;
String line;
BufferedReader br=null;
try {
br=new BufferedReader(new FileReader(file));
} catch (FileNotFoundException e) {
e.printStackTrace();
}
try {
while((line=br.readLine())!=null){
sb.append(line);
}
} catch (IOException e) {
e.printStackTrace();
}
String json=sb.toString();
// System.out.println("json:"+json);

//利用com.google.gson 包将json转换成List


List persons=new ArrayList();
Gson gson = new Gson();
List list=new ArrayList();
JsonParser jsonParser=new JsonParser();
JsonElement jsonElement=jsonParser.parse(json); //将json字符串转换成JsonElement
JsonArray jsonArray=jsonElement.getAsJsonArray(); //将JsonElement转换成JsonArray
Iterator it=jsonArray.iterator(); //Iterator处理
while(it.hasNext()){ //循环
jsonElement=(JsonElement) it.next(); //提取JsonElement
json=jsonElement.toString(); //JsonElement转换成String
Person person=gson.fromJson(json, Person.class); //String转化成JavaBean
persons.add(person); //加入List
}

System.out.println("ok");
[/code]


 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
网友点评