使用fs模块完成成绩整理的案例

核心思路:
1、导入fs,使用fs.readFile()读取文件内容
2、使用split()将dataStr字符串分割成字符串数组存为常量arrOld
3、创建空数组arrNew,使用foreach遍历数组arrOld,追加到新的空数组里arrNew,并使用replace()数组方法将=替换成:
4、使用join()方法把数组arrNew改为字符串,并用'\r\n'回车键换行分割,创建新的字符串常量newStr;
5、使用fs.writeFile(),将newStr写入到新的文本中(如果没有改文本系统会自动创建)

const fs = require('fs')

fs.readFile('./成绩.txt','utf8',function(err, dataStr){
    if(err){
        return console.log('读取文件失败!'+err);
    }
    // 先把成绩用空格进行分割
    // split() 方法用于把一个字符串分割成字符串数组
    // split(" ")代表从空格的地方分割
    const arrOld = dataStr.split(' ');

    // 循环分割后的数组,对每一项数据,进行字符串的替换
    // replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串
    const arrNew = [];
    arrOld.forEach(item => {
        arrNew.push(item.replace('=',':'))
    })
    console.log(arrNew);

    // 新数组的每一项换行隔开,以字符串形式返回

    // join() 方法将数组作为字符串返回。
    // 元素将由指定的分隔符分隔。默认分隔符是逗号 (,)。
    // join() 方法不会改变原始数组。
    const newStr = arrNew.join('\r\n');//'\r\n'是换行回车键
    console.log(newStr);

    fs.writeFile('./成绩OK.txt',newStr,function(err, dataStr){
        if(err) {
            return console.log('写入失败' + err);
        } console.log('写入成功');
    })
})
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容