0
我有一個.json文件,我使用像一個屬性文件。讀完json文件後,我從「Execute」節點獲得值,然後我想用「N」值更新「Execute」節點。java - 更新.json文件(使用json.simple)
我的json文件看起來像這樣。 { 「RunDate」: 「2015-01-12」, 「執行」: 「Y」}。我編寫了讀取json文件的代碼,並試圖通過編寫一個新文件來更新文件。
JSONParser parser = new JSONParser();
try {
FileReader fr = new FileReader("c:\\B\\myControl.json");
Object obj = parser.parse(fr);
JSONObject jsonObject = (JSONObject) obj;
ExecuteRun = (String) jsonObject.get("Execute");
RunDate = (String) jsonObject.get("RunDate");
//update
jsonObject.put("Execute", "N");
jsonObject.put("RunDate", RunDate);
FileWriter file = new FileWriter("c:\\B\\mycontrol.json", true);
try {
file.write(jsonObject.toJSONString());
} catch (Exception e) {
e.printStackTrace();
} finally {
file.flush();
file.close();
}
} catch(Exception e) {
e.printStackTrace();
}
FileWriter行出現「訪問被拒絕」錯誤。
任何人都可以幫我嗎?
是否有更優雅的方式來做到這一點? – ThomasDKim
看起來你仍然在第一行打開文件(用於閱讀)。 –
關閉FileReader。取決於很多事情,當別的東西正在讀取文件時,您通常無法寫入文件。 – immibis