2017-04-24 177 views
0

說,我有一個JSON文件象下面這樣:有更好/更簡單的方法來更新Java中的json文件嗎?

[{ 
    "obj1_key1":"aa", 
    "obj1_array":[{"e1":"11"},{"e2":"22"}] 
}, 
{ 
    "obj2_key1":"cc", 
    "obj2_key2":"dd" 
}] 

現在我想更新文件到類似下面:

[{ 
    "obj1_key1":"aa", 
    "obj1_array":[{"e1":"11"},{"e2":"22"},{"e3":"333"}] 
}, 
{ 
    "obj2_key1":"cc", 
    "obj2_key2":"dd" 
}] 

我試着用ObjectMapper解析像

JsonNode jsonFile = new ObjectMapper().readTree(new File("file.json"); 
文件

然而,我需要找到obj1_array並追加一個json對象,然後將json對象寫回文件。我不認爲我將json文件加載爲JsonNode的方式是一種簡單的方法,因爲我應該在Json/JsonArray之間來回轉換它。所以我想知道是否有更簡單的方法來完成這項工作?真的很感激。

+0

讀取,查找,修改和回寫是更新文件的最簡單方法。如果你想簡化代碼的其餘部分,你可以編寫一個DAO來隱藏這些細節。 –

回答

0

如果只是一次性的情況下,你可以使用你首選的機制,但如果它要經常使用,我寧願

  1. 轉換的JSON到一個POJO(使用一些解析器如Jackson)
  2. 更新必填字段
  3. 返回Json對象。
相關問題