gpt4 book ai didi

c# - 如何比较大的 JSON?

转载 作者:太空宇宙 更新时间:2023-11-03 12:03:35 30 4
gpt4 key购买 nike

有 2 个大的 JSON (~GB) 文件通过代码从相同的源创建,它们应该完全相同,但有时应该有一些小的差异。

要确保两次转换都正确完成相同的工作。制作了一个小项目,将 JSON 转换为具有元素及其内容(单个值或数组/对象)路径的 CSV 类型。然后计划通过任何文本差异比较“CSV”JSON。

Source (on my GitHub)对于这里有限的空间来说很长,不是问题的主要部分。它通常不能正常工作(在一个大的简单 JSON 和此处显示的另一个上进行测试,不想使用递归,代码非常棘手)。

JSON Data Set Sample # Example 4 的示例导出当 ID 设置为 type, Horizo​​ntal formatSort All 时,说明我的想法,如下所示:

batters\batter\Blueberry\   id  1003
batters\batter\Devil's Food\ id 1004
batters\batter\Chocolate\ id 1002
batters\batter\Regular\ id 1001
donut\ id 0001 name Cake ppu 0.55
topping\Glazed\ id 5002
topping\Chocolate with Sprinkles\ id 5006
topping\Chocolate\ id 5003
topping\Maple\ id 5004
topping\None\ id 5001
topping\Powdered Sugar\ id 5007
topping\Sugar\ id 5005

这是个好主意还是有更好的选择?

处理后的 JSON 预览:

{ "type": "donut",
"id": "0001", "name": "Cake", "ppu": 0.55,
"batters": { "batter": [ {
"id": "1001", "type": "Regular"
},{
"id": "1002", "type": "Chocolate"
},{
"id": "1003", "type": "Blueberry"
},{
"id": "1004", "type": "Devil's Food"
}]},
"topping": [ {
"id": "5001", "type": "None"
},{
"id": "5002", "type": "Glazed"
},{
"id": "5005", "type": "Sugar"
}, ...

最佳答案

至少有 2 个选项 - 1st here in another question 和新方法 RemoveTwins 添加到翻译成 C# 的 Gason C++ - 在我的 GitHub 上。

关于c# - 如何比较大的 JSON?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56061271/

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