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);
})
}
})