In this tutorial, you'll learn how to use Gson to enable pretty print JSON output. By default, Gson outputs the final JSON in compact format:
try {
// create user object
User user = new User("John Doe", "john.doe@example.com",
new String[]{"Member", "Admin"}, true);
// convert user object to JSON
String json = new Gson().toJson(user);
// print JSON string
System.out.println(json);
} catch (Exception ex) {
ex.printStackTrace();
}
The above code will generate the following compact-print JSON:
{"name":"John Doe","email":"john.doe@example.com","roles":["Member","Admin"],"admin":true}
To enable JSON pretty-print, you need the Gson
object using GsonBuilder
and call the setPrettyPrinting()
method, as shown below:
try {
// create user object
User user = new User("John Doe", "john.doe@example.com",
new String[]{"Member", "Admin"}, true);
// create a Gson instance with pretty-printing
Gson gson = new GsonBuilder().setPrettyPrinting().create();
// convert user object to pretty print JSON
String json = gson.toJson(user);
// print JSON string
System.out.println(json);
} catch (Exception ex) {
ex.printStackTrace();
}
Now here is what the final pretty-print JSON looks like:
{
"name": "John Doe",
"email": "john.doe@example.com",
"roles": [
"Member",
"Admin"
],
"admin": true
}
For more Gson examples, check out the How to read and write JSON using Gson in Java tutorial.
✌️ Like this article? Follow me on Twitter and LinkedIn. You can also subscribe to RSS Feed.