【发布时间】:2017-10-10 15:56:02
【问题描述】:
我们正在使用来自 HTTP Post 请求的大型 JSON 流。目标是使用 JsonTextReader 将传入的正文作为 JSON 流式传输,并将嵌入式 base64 编码的二进制文件提取到磁盘。在 XML 中,等效方法可能是 XMLReader.ReadElementContentAsBase64Async。
使用 JSON.NET,当我们迭代时,我们如何将编码图像数组的每个项目发送到 FileStream 而不将整个字符串保存在内存中。
示例 JSON 对象:
{
"company":"{clientCompany}",
"batchName":"{clientBatchName}",
"fileType":"{clientFileType}",
"encodedImages":[
"{base64encodedimage}",
"{base64encodedimage}",
"{base64encodedimage}"
],
"customFields":{
"{clientCustomField1}":"{clientCustomValue}",
"{clientCustomField2}":"{clientCustomValue}",
"{clientCustomField3}":"{clientCustomValue}",
"{clientCustomField4}":"{clientCustomValue}"
}
}
【问题讨论】:
-
我不这么认为。 this question 从未得到答复,这似乎导致问题 #1462 Add buffered reading of binary data to JsonTextReader #1462 被打开。
-
@dbc 似乎该问题是在 1 小时前提出的,并且该问题是在 3 周前提出的。也许我们的线程结合起来会提高认识:-)
-
您可以随时在问题 #1462 中添加评论,表明您也想要该功能。
标签: c# json http json.net filestream