天天看點

Node.js 簡單案例2,将一個檔案内容轉為json格式的檔案

案例目标

Node.js 簡單案例2,将一個檔案内容轉為json格式的檔案
Node.js 簡單案例2,将一個檔案内容轉為json格式的檔案

JSON檔案初始為空,運作c.js檔案後,将a的檔案内容轉為圖中b的内容格式.

案例代碼

// 分析
// 1.讀入資料
// 2.資料處理
// 1.将字元串截取為數組
// 2.周遊循環資料,插到對象裡面
// 3.定義求和與長度
// 3.寫入資料
// 定義fs path模闆
let fs = require('fs')
let path = require('path')
// 定義空數組,用來接收處理的資料
let list = []
// 定義空對象,用來接收完整資料
let re = {}
// 定義求和變量
let sum = 0
// 定義平均值
let average = 0
// 定義長度,總和除長度 = 平均數
let total = 0
// 1. 讀入資料
fs.readFile(path.join(__dirname, 'a.txt'), 'utf8', (err, data) => {
    if (err) {
        console.log('err', err)
        return
    }
    // console.log(data)
    // 處理資料,轉為數組
    let a = data.split('\r\n')
    // 接收length長度
    total = a.length
    // 2.處理資料
    a.forEach((item, index) => {
        // 定義對象,接收資料
        let obj = {
            // 接收姓名
            name: item.split(',')[0],
            // 接收年齡
            age: item.split(',')[1],
        }
        // 将對象插入到定義的list對象中
        list.push(obj)
        // 求和
        sum += +item.split(',')[1]
    })
    // 求平均值
    average = sum / total
    // 組合最終對象
    re = {
        list,
        average,
        total,
    }
    // 轉為json字元串
    re = JSON.stringify(re)
    // 寫入資料
    fs.writeFile(path.join(__dirname, 'b.json'), re, 'utf8', (err, data) => {
        if (err) {
            return
        }
        console.log(data)
    })
})
           

繼續閱讀