我想使用Java格式化包含JSON數據的字符串。有沒有人知道一個開源的庫。適用於Java的JSON美化庫
6
A
回答
11
假設你開始與現有的JSON字符串,然後Jackson可以爲你做到這一點:
ObjectMapper objectMapper = new ObjectMapper();
objectMapper.configure(SerializationConfig.Feature.INDENT_OUTPUT, true);
String originalJson = ...
JsonNode tree = objectMapper .readTree(originalJson);
String formattedJson = objectMapper.writeValueAsString(tree);
1
4
與傑克遜2.6.1
String beautify(String json) throws IOException {
ObjectMapper mapper = new ObjectMapper();
Object obj = mapper.readValue(json, Object.class);
return mapper.writerWithDefaultPrettyPrinter().writeValueAsString(obj);
}
的pom.xml:
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.6.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.6.1</version>
</dependency>
Convert JSON String to Pretty Print JSON output using Jackson
2
更新由skaffman前面的答案,與傑克遜的新版本(2+,我認爲)。第二行代碼是:
objectMapper.configure(SerializationFeature.INDENT_OUTPUT, true);
相關問題
- 1. 適用於iPhone的JSON庫
- 2. 適用於iPhone的JSON庫
- 3. 適用於Java的UPnP庫
- 4. 適用於JSON?
- 5. 適用於套接字流的C++/Java序列化庫?
- 6. Java庫代碼美化/格式
- 7. 適用於Windows的Java庫VHD API
- 8. 適用於GAE的Java PDF庫?
- 9. 適用於Android的SSH Java庫?
- 10. 適用於Android的Java EWS庫
- 11. 適用於Java的FIPS兼容SSH庫
- 12. 適用於Java的FinTS或HBCI庫
- 13. 適用於Java的時態庫
- 14. 適用於Scala和Java的Builder庫
- 15. 美化JSON對象警報
- 16. 用於Java的增量流式JSON庫
- 17. Swagger用戶界面:美化JSON
- 18. 美化JSON當字符串化
- 19. Laravel 5.4 JSON美化輸出格式化
- 20. 用於文本規範化的Java庫
- 21. 適用於Java的Feed Reader庫最適合什麼?
- 22. 美化JSON數組中的JavaScript
- 23. 什麼是美化JSON的意思
- 24. 基於Java的Atom/RSS庫適用於Google App Engine
- 25. 適用於Java的Automapper
- 26. 適用於MongoDB的Java API
- 27. 適用於Java的CSV API
- 28. 使用Ruby或Java美化HTML代碼?
- 29. 適用於Android的RTP庫
- 30. 適用於iOS的「Leaves」庫
使用Jackson新版本的人,請檢查@H Mirza的答案。 – Aebsubis 2017-03-02 09:47:40