目标:将a.txt内容转换成b.json内容

初始txt文本

小王,19
小李,20
小陈,21

转换成功的json内容

{
“list”:[
{“name”:“小王”,“age”:19},
{“name”:“小李”,“age”:20},
{“name”:“小陈”,“age”:21}
],
“average”:20,
“total”:3
}

转换
1.在txt文件同级下创建一个js文件

const path = require('path')
const fs = require('fs')

let obj = {
    list: list,
    average: average,
    total: num
}
let list = []
//读取txt文件
fs.readFile(path.join(__dirname, 'a.txt'), 'utf8', (err, data) => {
    if (err) {
        console.log('err', err);
        return
    }
    //将字符串用\r\n分割成数组
    const arr2 = data.split('\r\n')
    let num = 0
    let sum = 0
    arr2.forEach((item) => {
        let obj1={}
        obj1.name = item.split(',')[0]
        obj1.age = +item.split(',')[1]
        list.push(list1)
        num++
        sum += +item.split(',')[1]
    })
    let average = sum / num
    //将文件写入到b.json中
    fs.writeFile(path.join(__dirname, 'b.json'), JSON.stringify(obj),'utf8', (err, data) => {
        if (err) {
            console.log('err', err);
            return
        }
    }
       )
})


2.使用cmd 执行
在文件根目录的下运行cmd,输入node js文件名 ,成功的JSON样式如下

{“list”:[{“name”:“小王”,“age”:19},{“name”:“小李”,“age”:20},{“name”:“小陈”,“age”:21}],“average”:20,“total”:3}

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐