[英]Deserialize non-standard JSON-like format in C#
我正在尝试使用 C# 反序列化包含结构化数据的文件,以导出到 CSV 并最终插入 MSSQL 数据库。
该文件看起来有点像 JSON,但只有个别行是有效的 JSON。
例子:
{"field1": "value1", "field2": "value2", "field3": "value3"}
{"field1": "value4", "field2": "value5", "field3": "value6"}
{"field1": "value7", "field2": "value8", "field3": "value9"}
我尝试使用 Newtonsoft.Json 在各个行上循环,但是执行需要很长时间,因为给我的文件非常大(数百万行)。
Alternativley 我尝试使这整个事情有效 json 使用 StringBuilder 更改字符串,但这会导致将整个文件一次加载到 RAM 中,这似乎根本不是一个合理的选择。
我什至考虑过将文件分成卡盘,然后同时处理,但我认为必须有一个更干净的选项来做到这一点?
这是一种在某种程度上标准化的格式吗? go 关于导入这个的最聪明的方法是什么? 我应该跳过 CSV 并使用 C# 直接将数据插入数据库吗?
任何帮助表示赞赏!
鉴于文件的大小,我很想创建一个自定义 stream (请参阅实现自定义 stream )来包装真实文件 stream真正的 stream 和末尾的“]}”。 这意味着您可以使用您的 Newtonsoft.JSON 库,而无需尝试在 memory 中构建整个更正后的 JSON。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.