Varolan Json dosyasını güncellemeye çalışıyorum, ancak herhangi bir nedenden dolayı, istenen değer değiştirilmiyor, ancak tüm değerler kümesi (yeni değerle birlikte) orijinaline ekleniyorpython ile json dosyasını güncelleştirme
jsonFile = open("replayScript.json", "r+")
data = json.load(jsonFile)
tmp = data["location"]
data["location"] = "NewPath"
jsonFile.write(json.dumps(data))
dosya ve sonucudur: Gerekli:
{
"location": "NewPath",
"Id": "0",
"resultDir": "",
"resultFile": "",
"mode": "replay",
"className": "",
"method": "METHOD"
}
Fiili:
{
"location": "/home/karim/storm/project/storm/devqa/default.xml",
"Id": "0",
"resultDir": "",
"resultFile": "",
"mode": "replay",
"className": "",
"method": "METHOD"
}
{
"resultDir": "",
"location": "pathaaaaaaaaaaaaaaaaaaaaaaaaa",
"method": "METHOD",
"className": "",
"mode": "replay",
"Id": "0",
"resultFile": ""
}
'seek()' ve 'truncate()' kullanımını açıkladığınız için teşekkür ederiz. Ancak jsonFile.write (json.dumps (data)) 'i' jsonFile.dump (data, f) 'ile değiştirerek bu cevabı iyileştiririm; daha pitonik. – BoltzmannBrain