缺少Json文件中的引号

时间:2013-01-22 18:46:16

标签: json d3.js

我有一个非常大的Json文件。它包含27000条记录。

记录如下:

    {
adlibJSON: {
recordList: {
record: [
{
@attributes: {
priref: "4372",
created: "2011-12-09T23:09:57",
modification: "2012-08-11T17:07:51",
selected: "False"
},
acquisition.date: [
"1954"
],
acquisition.method: [
"bruikleen"
],
association.person: [
"Backer, Bregitta"
],
association.subject: [
"heraldiek"
],
collection: [
"Backer, collectie"
], ... ...

问题在于这是无效的Json。名称缺少引号。

例如,acquisition.date应为"acquisition.date":

我需要编辑这个大json文件并添加所有引号,否则文件不会解析,例如D3.js

修复此Json文件的最佳方法是什么?

2 个答案:

答案 0 :(得分:2)

我使用了一个不错的文本编辑器,具有正则表达式查找和替换功能(例如,Visual Studio,UltraEdit等)。

然后做:找到

^\s*(\w+\.\w+)\s*:

并替换为

"$1":

或者你可以使用powershell:

$allText = gc yourfile.txt
$allText -replace '^\s*(\w+\.\w+)\s*:', '"$1":'

答案 1 :(得分:0)

如果你可以在文本编辑器中打开它,我想你可以简单地使用替换函数:

],   -->    ]," 

: [   -->   ":  [

如果您的JSON格式相同,并且不包含这些字符,则应该可以使用。

-

请注意,您必须自己手动编辑第一个键。