使用Gson创建/解析json格式文件
本教程仅限于
gsonv2.8.5
+jdk1.8
一、在pom.xml中加入gson的依赖文件
<!-- https://mvnrepository.com/artifact/com.google.code.gson/gson -->
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.5</version>
</dependency>
二、书写代码,使用无参构造创建Json格式文本
此处的Person同上次的org.json一样,是一个JavaBean对象
public static String createJsonText(){
Person person = new Person("絷缘", 23, "male", false, false, new String[]{"Java", "Linux", "JavaScript", "Vue", "SemanticUI", "NodeJS"});
Gson gson = new Gson();
return gson.toJson(person);
}
三、书写代码,使用GsonBuilder在创建Json之前设置高级属性
public static String createJsonText(){
Person person = new Person("絷缘", 23, "male", false, false, new String[]{"Java", "Linux", "JavaScript", "Vue", "SemanticUI", "NodeJS"});
GsonBuilder gson = new GsonBuilder();
//设置Json美化显示
gson.setPrettyPrinting();
//设置Json中key的首字母全部大写
gson.setFieldNamingPolicy(FieldNamingPolicy.UPPER_CAMEL_CASE);
Gson gs = gson.create();
return gs.toJson(person);
}
四、书写代码,使用GsonBuilder在创建Json之前拥有格式化日期时间的功能
public static String createJsonText(){
PersonWithBir person = new PersonWithBir("絷缘", 23, "male", false, false, new String[]{"Java", "Linux", "JavaScript", "Vue", "SemanticUI", "NodeJS"},new Date(System.currentTimeMillis()));
Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd").setPrettyPrinting().create();
return gson.toJson(person);
}
五、书写代码,实现解析Json格式文本
person.json需要自己创建置于src目录(普通项目)或resources目录下(Maven项目)
public static void parseJson() throws IOException {
InputStream is = GsonDemo1.class.getClassLoader().getResourceAsStream("person.json");
BufferedReader br = new BufferedReader(new InputStreamReader(is, "UTF-8"));
Gson gson = new Gson();
Person person = gson.fromJson(br, Person.class);
System.out.println(person);
}
原文作者:絷缘
作者邮箱:zhiyuanworkemail@163.com
原文地址:https://zhiyuandnc.github.io/XXV7UsHKh/
版权声明:本文为博主原创文章,转载请注明原文链接作者信息