gpt4 book ai didi

javascript - 用节点JS替换文件中的字符

转载 作者:行者123 更新时间:2023-11-30 06:17:20 26 4
gpt4 key购买 nike

我将 JSON 追加到文件中。我正在使用 appendFile 追加到文件中。我正在使用特定的 JSON 结构

我的问题是:如何将字符 '][' 更改为 ','

我想我需要使用 readFile 和函数 replace 吗?

需要帮助,提前致谢

  var table = []


table.push({"executionDate":date,
"issueID":key,
"priority":{
"jira": priority,
"computed":score1
},
"expectedValue":{
"jira": expected,
"computed":score2
}
})

var json = JSON.stringify(table);


fs.appendFile('myjsonfile.json', json, 'utf8', function (err) {
if (err) console.error(err)
});

实际结果:

  [{
"executionDate": 25 / 03 / 2019,
"issueID": 1,
"priority": {
"jira": important,
"computed": 10
},
"expectedValue": {
"jira": expected,
"computed": 20
}
}
]
[{
"executionDate": 26 / 03 / 2019,
"issueID": 2,
"priority": {
"jira": important,
"computed": 20
},
"expectedValue": {
"jira": expected,
"computed": 30
}
}]

预期结果:

  [{
"executionDate": 25 / 03 / 2019,
"issueID": 1,
"priority": {
"jira": important,
"computed": 10
},
"expectedValue": {
"jira": expected,
"computed": 20
}
}
,
{
"executionDate": 26 / 03 / 2019,
"issueID": 2,
"priority": {
"jira": important,
"computed": 20
},
"expectedValue": {
"jira": expected,
"computed": 30
}
}]

最佳答案

使用 append 你不能这样做。阅读第一条评论,了解如何实现您的目标。

在这里,我提出另一种不符合您预期结果的方法。但是在注释中我不能输入代码块,这就是我将它放在这里的原因。

我建议每次您的 JSON 和换行符 "\n" 附加。然后,当您读取文件时,按换行符拆分并分别解析每一行:

var data = contents.trim()
.split(/\n/g)
.map(line => JSON.parse(line)[0]);

也就是说,如果您的数组中始终只有一项。

如果每个附加条目有多个项目:

var data = [];
contents.trim()
.split(/\n/g)
.map(JSON.parse)
.forEach(entry => data.push(...entry));

关于javascript - 用节点JS替换文件中的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55373620/

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