我将此数据保存在.jl文件中,我想将其转换为JSON数组:
我应该从服务器接收数据,该服务器以.jl格式发送数据。但是,我已经用Node.js编写了程序,唯一知道使用数据的方法是来自.json文件的JSON格式。我已经共享了.jl文件代码和.json格式,我想将其转换为以下格式。 (目前,我已经手动将.jl文件中的数据重新键入为.json格式)。有谁知道如何将.jl文件中的数据转换为JSON数组中的数据,如下面的代码所示?
// .jl data:
{
"FName": "Peter",
"ONames": ["Mc", "West"],
"Hobbies": ["Football", "Basketball"],
"Age": 18
},
{
"FName": "Edward",
"ONames": ["Mc", "Fly"],
"Hobbies": ["Tennis", "PlayStation"],
"Age": 19
},
{
"FName": "Winnie",
"ONames": ["Honey", "Pooh"],
"Hobbies": ["Boxing", "Basketball"],
"Age": 28
}
我希望实现以下目标:
// Expected JSON array format:
[
{
"FName": "Peter",
"ONames": ["Mc", "West"],
"Hobbies": ["Football", "Basketball"],
"Age": "18"
},
{
"FName": "Edward",
"ONames": ["Mc", "Fly"],
"Hobbies": ["Tennis", "PlayStation"],
"Age": "19"
},
{
"FName": "Winnie",
"ONames": ["Honey", "Pooh"],
"Hobbies": ["Boxing", "Basketball"],
"Age": "28"
}
]
答案 0 :(得分:0)
我认为您要问的是如何从.jl
文件中读取内容?
由于.jl
是utf8编码的文本文档,您只需要将内容包装在方括号内,因此可以使用fs.readFile
,将编码设置为'utf8',将其包装在方括号中,然后写成字符串转换为.json文件。这是fs.readFileSync()
的示例:
const fs = require('fs');
const content = fs.readFileSync('./test.jl', 'utf8');
fs.writeFile('./test.json', `[${content}]`, (err) => {
if (err) throw err;
console.log('saved as json')
})
我一点也不了解.jl
,所以我不确定您需要注意什么语法。对于您的用例,虽然应该可以。
编辑:如果只想立即使用文件,而不是将其写出到.json
,则可以执行以下操作:
const fs = require('fs');
const content = fs.readFileSync('./test.jl', 'utf8');
const data = JSON.parse(`[${content}]`);
如果您的.jl
确实真的很庞大,请考虑使用流。