小编典典

在C#中将数据附加到json文件中

json

我将如何继续追加数据?我有这个:

{
  "13232": [
    "2012952"
  ]
}

我想向它添加另一个对象,例如:

{
  "13232": [
    "2012952"
  ],
  "19213": [
    "2016086"
  ]
}

这是我使用的代码:

JArray array = new JArray();
array.Add(Itemid);

JObject o = new JObject();
o[Userid] = array;

string json = o.ToString(Formatting.Indented);
//i know this keeps appending text but how would i append it inside the { and }?
File.AppendAllText("E:/media.json", json);

我真的不知道如何继续添加它,但是也许其他人知道吗?


阅读 1040

收藏
2020-07-27

共1个答案

小编典典

您将无法使用文件追加操作来执行此操作。文件追加操作只能在末尾添加文本,而不能在中间插入文本。这使得不可能使用file-append来保持JSON有效。

我可以想到两种选择:

  1. 将整个文件读入一个对象,添加您的对象,然后重写整个文件(性能不佳)
  2. 打开文件读/写,解析直到到达右大括号,然后写入其余数据,然后再写右大括号(不平凡)
2020-07-27