写入.json文件中的特定位置+序列化大小限制问题c#

本文关键字:序列化 问题 位置 文件 json 定位 写入 | 更新日期: 2023-09-27 18:09:37

我有一个方法,从json序列化字符串检索数据,并将其写入一个。json文件使用:

TextWriter writer = new StreamWriter("~/example.json");
writer2.Write("{'"Names'":" + new JavaScriptSerializer().Serialize(jsonData) + "}");   
数据(样本):

{"People":{"Quantity":"4"}, ,"info" :
 [{"Name":"John","Age":"22"}, {"Name":"Jack","Age":"56"}, {"Name":"John","Age":"82"},{"Name":"Jack","Age":"95"}]
}

这个工作完美,但是jsonData变量的内容经常更新。而不是总是删除和创建一个新的例子。

  • 是否有一种方法可以只将数据写入文件中的特定位置?在上面的例子中,通过附加另一个{"Name":"x","Age":"y"}?

我这样做的原因是,当我试图在c#中使用visual studio序列化大量数据时遇到了一个问题。我得到了"字符串的长度超过maxJsonLength属性上设置的值"错误。我试着增加网页的最大允许大小。配置使用一些建议的方法在这个论坛,但他们从来没有工作。随着文件变大,我觉得我可能会再次遇到同样的问题。任何其他选择都是受欢迎的。

写入.json文件中的特定位置+序列化大小限制问题c#

我不知道JSON序列化器只与JSON块一起工作。您可以尝试使用Json。. NET可以处理更大的数据:

var data = JsonConvert.SerializeObject(new { Names = jsonData });
File.WriteAllText("example.json", data);