主要是有三种不同类型的数据之间需要相互转换。
- 对象(包括普通对象,还有数组,列表,集体,映射等对象)
- Json对象(有JsonObject和JsonArray,还有一个基类JsonElement)
- Json字符串(就是一个遵循了JSON标准的字符串)
对象与JSON字符串
其中最简单的就是
对象到JSON字符串,使用 Gson
实例中的 toJson()
方法,可以直接将一个对象转换成JSON字符串。
JSON字符串到对象,使用 Gson
实例中的 fromJson()
方法,可以直接将字符串转换成一个对象。
Gson gson = new Gson();
String json = gson.toJson(person); // 对象到JSON字符串
Person person = gson.fromJson(json, Person.class); // JSON字符串到对象
泛型要比上面的麻烦一点。先不说
JSON对象与JSON字符串
JSON对象到JSON字符串,也很简单,有两种方法,一:与对象到JSON字符串的方法一样。也使用 toJson()
方法。二:使用JSON对象的 toString()
方法。也可以生成对应的JSON字符串。
JSON字符串到JSON对象,就需要 JsonParse
实例,使用 parse()
方法。
JsonParse jsonParse = new JsonParse();
JsonElement el = jsonParser.parse(str);
对象与JSON对象
对象到JSON对象,使用 Gson
实例中的 toJsonTree
方法,会生成一个 JsonElement
实例,然后再根据需要转换成 JsonAray
或 JsonObject
就可以了。
JSON对象到对象,还是使用 Gson
实例中的 fromJson
方法,会生成一个对象。