gson and json

Posted uuhh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了gson and json相关的知识,希望对你有一定的参考价值。

gson强大的地方是可以反解析


//从文件过去json File file = new File(GsonT.class.getResource("json.sjon").getFile()); String s = FileUtils.readFileToString(file); Gson gson = new Gson(); Diaosi diaosi = gson.fromJson(s, Diaosi.class); //gson转换日期格式
File file = new File(GsonT.class.getResource("json.sjon").getFile());
String s = FileUtils.readFileToString(file);
Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd").create();
Diaosi diaosi1 = gson.fromJson(s, Diaosi.class);
System.out.println(diaosi1.getBirthDay().toString());
System.out.println(diaosi1.getMajor());
System.out.println(diaosi1.getMajor().getClass());//java.util.Array
System.out.println(diaosi1.getMajor().getClass());//修改diaosi类的major类型为Set.gson会自动转换成java.util.Set


//最基本的json操作 JSONObject json = new JSONObject(); Object nullObj=null; json.put("name","王小二"); //gonsBuilder格式 GsonBuilder gb=new GsonBuilder(); gb.setPrettyPrinting(); gb.setFieldNamingStrategy(new FieldNamingStrategy() { public String translateName(Field field) { if(field.getName().equals("name")){ return "Name"; } return field.getName(); } }); Gson gson1 = gb.create(); System.out.println(gson1.toJson(diaosi)); //获取数组jsonarray File file = new File(JsonObjectOne.class.getResource("/j.json").getFile()); String content = FileUtils.readFileToString(file); JSONObject jsonObject = new JSONObject(content); if(!jsonObject.isNull("name")){ } if(!jsonObject.isNull("nickname")){ } JSONArray jsonArray = jsonObject.getJSONArray("major"); for(int i=0;i<jsonArray.length();i++){ String m=(String)jsonArray.get(i); }

  










以上是关于gson and json的主要内容,如果未能解决你的问题,请参考以下文章

你能避免 Gson 将“<”和“>”转换为 unicode 转义序列吗?

在android中使用GSON解析带有动态“key”和“value”的JSON

你真的会用Gson吗?Gson使用指南

gson解析错误

Gson全解析(下)-Gson性能分析

完全理解Gson:Gson反序列化