fs文件系统模块是node.js官方提供的,用来操作文件的模块
在javaScript中通常用 const fs=require('fs')方法来导入fs文件系统模块
fs.readFile(),用来读取指定文件的内容
fs.readFile(path[,options], callback)
参数一:必选参数,字符串,表示文件的路径
参数二:可选参数,表示以什么编码格式来读取文件
参数三:必选参数,文件读取完成后通过回调函数拿取读取结果
fs.writeFile(),用来对指定的文件写入内容
fs.writeFile(file, data[, options] , callback)
参数一:必选参数,需要指定一个文件路径
参数二:必选参数,表示要写入的内容
参数三:可选参数,表示写入的文件内容是以什么样格式,默认utf8
参数四:必选参数,写入完成后的回调函数
考试成绩整理目标:
.将素材目录下 高一前端期成绩.txt,整理成想要的文件格式new2.txt
整理前:小红=100 小蓝=99 小黑=88 小青=66
整理后:小红:100
小蓝:99
小黑:88
小青:66
核心步骤:
1.导入fs文件系统模块
2.使用fs,readFile()方法,读取 高一前端期成绩.txt文件
3.判断文件是否读取成功
4.读取成功后将文件数据进行处理
5.调用fs.writeFile方法写入新文件new2.txt
const fs = require('fs');
fs.readFile('./高一前端期末成绩.txt', 'utf8', function (err, datass) {
if (err) {
console.log('文件读取失败:' + err);
}
// console.log('文件读取成功:' + datass);
// 1.将获取数据按照空格进行分隔,split()将字符串分割成,字符串数组
const t11 = datass.split(' ');
// console.log(t11);
// 2.循环分割后的数组,对每一项数据进行字符替换
const arr1 = [];
t11.forEach(item => {
arr1.push(item.replace('=', ':'));
});
// console.log(arr1);
//3.将数组的每项进行合并(回车换行),得到一个新的数组
const arrnew = arr1.join('\r\n');
// console.log(arrnew);
// 4.检查数据是否写入新的文件成功
fs.writeFile('./new2.txt',arrnew,function(err){
if(err){
console.log("文件写入失败,请重新写入");
}
else{
console.log("恭喜您!文件写入成功");
}
})
})