【发布时间】:2020-02-02 07:45:49
【问题描述】:
我有一个遵循这种格式的大文件。最初我尝试使用 JSONStream 在 javascript 中解析它并遇到一些issues。我一直在试图找出一种方法来更改重复键,以便我可以更轻松地解析它。例如:而不是content,每个都将附加一个计数器 - content-1、content-2。这是一个非常大的文件,所以我无法手动执行,任何有关如何执行此操作或使用 js 重组的建议将不胜感激!
{
"Test": {
"id": 3454534344334554345434,
"details": {
"text": "78679786787"
},
"content": {
"text": 567566767656776
},
"content": {
"text": 567566767656776
},
"content": {
"text": 567566767656776
}
}
}
【问题讨论】:
-
您不接受“编写自己的解析器”(就像在其他帖子 cmets 中一样)所以我猜您是在要求工具或类似的东西(也就像您在其他帖子中所做的那样厘米)。这超出了 StackOverflow 的范围。看来这里唯一的答案是“写一个解析器”。
-
@JorgeFuentesGonzález 是的,我知道这是一个解决方案,但对于这个特定任务我无法做到这一点,所以我很好奇是否有人以前完成过上述操作。
-
@JorgeFuentesGonzález 在这里编写自定义解析器并不是必需的。他使用的解析器很好。我自己会写一个答案,但我真的不明白他从 JSONStream 获得的数据的问题是什么。数据对我来说似乎很好。
-
哦,我明白了。为了方便起见,我能想到的是在双引号之间搜索字符串,然后是
:,这样你就得到了所有的键。然后检查重复项并重命名它们。这实际上会在 JSON 周围找到重复项,但无论如何。 -
@BluLotus 哦,我想我现在明白了……您显示的数据是您输入的数据,而不是输出的数据?我从您最初的问题中认为,流解析器可以很好地处理您的重复键名。
标签: javascript parsing steam jsonstream