[英]Dynamic Json to CSV in java. looking for Generic code that works with any json, irrespective of any number of node in json file
[英]Java code to parse any json file irrespective of its format or key
我一直在尋找很多天但沒有得到任何答案。 所以最后我來到這個網站。 是否有任何java代碼或任何庫可以解析任何json文件,無論其格式如何,也不知道json文件中存在的所有鍵。
無論給出什么json文件,它都可以顯示其中的所有鍵值對。
您還可以試用Genson http://code.google.com/p/genson/ 。
如果根是一個對象,則可以將json文件反序列化為映射(否則它是一個數組,並且您反序列化為一個數組)。
FileReader reader = new FileReader("path/to/your/json");
Map<String, Object> map = new Genson().deserialize(reader, Map.class);
根據您希望實現更好性能的目的,您可以直接使用流式api(但需要編寫更多代碼)。 你只想打印鍵/值?
Genson擁有完整的數據綁定支持並提供了一些其他不錯的功能,請查看wiki 。
傑克遜的表現非常好。
final Map<String, Object> son = objectMapper.readValue(JSON_SOURCE,
new TypeReference<Map<String, Object>>() {}
);
其中JSON_SOURCE
可以是String
, Reader
, File
, byte[]
, InputStream
等。(參見: ObjectMapper文檔 )
此代碼段與針對此問題發布的其他(類似)答案略有不同。 注意以上用途:
TypeReference
而不是Class
對象 Map
而不是特定的實現(例如HashMap
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.