gpt4 book ai didi

c# - 如何直接从流反序列化非常大的 JSON 数据而不是一次加载整个 json

转载 作者:太空狗 更新时间:2023-10-29 19:48:15 27 4
gpt4 key购买 nike

<分区>

Possible Duplicate:
Incremental JSON Parsing in C#

以下问题是相关的,但没有解决(至少直接)我试图解决的问题:

我正在尝试使用 Json.NET 反序列化可能非常大的 JSON 数据.我不想将整个文件加载到内存中并使用 JObject.Parse(JsonFullString) 解析 JSON,而是希望逐个 token 地从流 token 中读取并构建对象图。对于如何从流中实现反序列化的任何建议,我将不胜感激。

注意:我的意图是用更好的实现替换下面的代码


string jsonData = string.Empty;
byte[] buffer = new byte[16 * 1024];
using (MemoryStream ms = new MemoryStream())
{
int read;
while ((read = stream.Read(buffer, 0, buffer.Length)) > 0)
{
ms.Write(buffer, 0, read);
}
jsonData = ASCIIEncoding.ASCII.GetString(ms.ToArray());
}
JObject jObject = JObject.Parse(jsonData);
var entities = from e in jObject.Root
select e;

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com