欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

使用com.google.gson包将json数据文件转换成List的方法,,API参考:http:/

来源: javaer 分享于  点击 36008 次 点评:133

使用com.google.gson包将json数据文件转换成List的方法,,API参考:http:/


API参考:http://google-gson.googlecode.com/svn/trunk/gson/docs/javadocs/index.html

将json转换成javaBean可以有多种解决方案,最近发现google的Gson包非常有效,且风格优雅。通过阅读API,和实践,摸索出一个读取json数据文件,然后转换成List的办法,源代码如下:

data.json文件内容如下:

[{"name":"狩猎者","age":98,"tel":"13957809999","address":"中国湖南衡阳"},{"name":"飞鱼","age":9,"tel":"13957808888","address":"中国浙江宁波"}]

java程序如下:

 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<JsonElement> 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"); }
相关栏目:

用户点评