我有內容的JSON文件:轉換JSON格式
{
"id" : 10,
"name" : "book1",
"user" : "john",
"chapters" : [
{
"chaptername" : "chapter1",
"content" : "index"
}
]
}
我想它有一個很好的格式(例如樹格式或表)轉換。有沒有人知道一些好的java包?
感謝
我有內容的JSON文件:轉換JSON格式
{
"id" : 10,
"name" : "book1",
"user" : "john",
"chapters" : [
{
"chaptername" : "chapter1",
"content" : "index"
}
]
}
我想它有一個很好的格式(例如樹格式或表)轉換。有沒有人知道一些好的java包?
感謝
它不會像變魔術一樣工作,您可以使用GSON或傑克遜映射JSON轉換成Java類型或對象,從那裏你可以做你想要映射爲對象的JSON的一切。
例如,你將有下面這樣的藍圖:
public class YourJson {
private int id;
private String name, user;
private Chapter[] chapter;
...
// Getters and setters ommitted
...
}
public class Chapter {
private String chaptername;
private String content;
...
// Getters and setters ommitted
...
}
一旦你在項目中加入傑克遜作爲一個庫,你可以使用傑克遜的對象映射
ObjectMapper objectMapper = new ObjectMapper();
YourJson jsonAsObject = objectMapper.readValue(yourJsonString, YourJson.class);
從那裏你可以訪問屬性
System.out.println(jsonAsObject.getId());
我會推薦JAXB;) – 2014-10-28 21:36:11
我haven'試過JAXB,但我會看看:D! – 2014-10-28 21:39:00
這很容易的人!所有你需要的是:1個類,1個註釋,1個XML並執行unmarshall。最好的祝福! – 2014-10-28 21:43:21
儘管JSON提供了一種定義的描述數據的方式,但數據st它描述的結構純粹是任意的。您也希望轉換的格式也是任意的。一個單獨的通用庫如何能夠從一個任意結構轉換到另一個結構? – JAAulde 2014-10-28 21:31:03
@JAAulde JAXB? – 2014-10-28 21:34:42