fs模块是Node.js官方提供的用于操作文件的模块
目录
1 导入fs模块
2 读取文件内容 fs.readFile()
2.1 读取成功
2.2 读取失败
2.3 搞个函数判定读取成功还是失败
3 写入文件内容 fs.writeFile()
3.1 写入成功
3.2 写入失败
3.3 搞个函数判定写入成功还是失败
4 读取整理后写入
1 导入fs模块
在使用fs模块的时候首先要在JS代码中导入fs模块
这样我们后面写 fs.方法 就可以生效了
这个相当于是导入库的方法,之后想导入别的库方法也是一样的
用const的目的就是怕下面你再搞个相同的变量名给fs这种库的名称覆盖掉,一般来说我们会使用const,但是不用也是没有语法错误的
2 读取文件内容 fs.readFile()
- path 要读取文件的路径
- options 读取的编码方式,一般为utf8
- callback 回调函数。回调函数中第一个参数是错误信息,如果没有错误就返回null。第二个参数是读取的内容,如果读取错误就返回undefined
使用前我们先搞一个名为test.txt的文件,里面写上123
我们简单用一下
2.1 读取成功
2.2 读取失败
如果读取一个不存在的文件就会读取失败
2.3 搞个函数判定读取成功还是失败
可以通过err是否为null判断读取是否失败
成功
失败
3 写入文件内容 fs.writeFile()
- file 写入文件的路径,写入前不需要提前创建文件,但一定要保证路径存在,比如你想在A文件夹中写入B文件,B可以不提前创建,A一定要提前创建
- data 要写什么东西
- options 读取的编码方式,一般为utf8
- callback 回调函数,回调函数有一个参数,会告诉你错误信息,如果没错误就是null
使用fs.writeFile()写入内容成功后,新内容会覆盖掉旧内容
3.1 写入成功
3.2 写入失败
如果路径不对就会失败
3.3 搞个函数判定写入成功还是失败
可以通过判断error是不是null来判断写入成功还是失败
成功
失败
4 读取整理后写入
我们做个成绩整理的例子
需要整理 成绩.txt,内容如下
需要将其搞成下面这样并写入成绩-ok.txt中
const fs = require('fs')
fs.readFile('成绩.txt','utf8',function(err,dataStr) {
dataStr = dataStr.replaceAll('=',':')
dataStr = dataStr.replaceAll(' ','\n')
fs.writeFile('成绩-ok.txt',dataStr,function(err) {
console.log('写入成功')
})
})