将txt文本数据转换为json对象

a.txt中的数据:

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

最终要实现的结果:

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

js代码如下:


let fs = require('fs')
let path = require('path')
const sty = path.join
fs.readFile(sty(__dirname,'a.txt'),'utf8',function(err,data){ 
  if(err){ 
    console.log(err);
    return
  }else{ 
    // console.log(data.split('\n'));
    let num = 0
    let sum = 0
    let arr = []
    
    data.split('\n').forEach(item=>{ 
      //拆分成数组,遍历数组
      // console.log(item.split(','));
      // console.log(item.split(',')[0]);
      let obj = { }
      // 循环一次增加一次数据
      obj.name = item.split(',')[0]
      obj.age = 1*item.split(',')[1]
      arr.push(obj)
      // 再把obj数据增加到数组里
      sum+=obj.age
      //求三个数的和,方便求平均值
      num++
      // 每循环一次增加一
    })
    // console.log(arr);
    let out = { 
      list: arr, //数据
      average:sum/num,//平均值 总数除以次数
      total:num    //次数
    }
    console.log(out);
    // JSON.stringify(out) 
    fs.writeFile(sty(__dirname,'C.json'),JSON.stringify(out),function(err){ 
      console.log(err);
    })
  }
  
})
    原文作者:只要心中有光
    原文地址: https://blog.csdn.net/i_bilibili/article/details/120258274
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞