繁体   English   中英

如何在 Javascript (Node.js) 中将 .jl 文件转换为 .json 文件

[英]How to convert a .jl file to a .json file in Javascript (Node.js)

我在 .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"
    }
]

我想你要问的是如何从.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真的很大,请考虑使用流。


文件读取文件

fs.readFileSync

文件写入文件

fs.writeFileSync

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM