咱们这里只学习两个方法:fs.readFile()和fs.writeFile()方法
在使用fs模块方法之前咱们需要做一件事:将fs模块导入js文件
怎么导入,栗子来咯:
let fs = require('fs')
在文件的开头写上这句代码就好了。这段代码就是告诉编译器,我们将要使用fs模块了哟,你快准备好fs模块。
这里定义了一个fs对象,。没错,这里fs是一个对象,所以我们在使用readFile和writeFile的时候,直接打点调用就可以了。
接下来我们就开始学习这两个最基本的方法吧
1、fs.readFile()方法
使用fs.readFile()方法,可以读取文件中的内容,其语法格式如下:
fs.readFile(path[,options],callback)
他有三个参数,其中第二个参数是可选参数,今后在读文档的时候,遇到用方括号括起来的参数,就是可选参数。
- 参数1:必选参数:字符串,表示文件的路径
- 参数2:可选参数:表示以什么编码格式来读取文件(默认值是utf8)
- 参数3:必选参数:函数,在读取文件之后,通过这个函数返回拿到的读取结果
其中,回调函数有两个参数
callback(err,dataStr){}
err中存放的是当读取文件失败时返回的失败对象, dataStr存放的是读取成功后文件中的值,值得注意的是,这里读取的值是一个字符串string类型的值
举个栗子:
咱们先在同一个目录里面新建了一个1.txt的文本文件,内容随便输入了一串数字4545446465421
let fs = require('fs')
fs.readFile('1.txt','utf8',(err,dataStr)=>{
console.log('err:' + err);
console.log('dataStr:' + dataStr);
})
可以看到,当读取成功后,err的值是一个空值,dataStr的值是文件内的值
再看看读取失败的效果:
当读取失败时,err的返回值是失败的原因:没有在TEXT文件夹找到11.txt文件
而dataStr的值是undefined
2、fs.writeFile()方法
使用fs.writeFile()方法,可以向指向的文件中写入内容,语法格式如下:
fs.writeFile(path,data[,options],callback)
- 参数1:必选参数:字符串,表示文件的路径
- 参数2:必选参数:表示要写入的内容
- 参数3:可选参数:表示以什么编码格式来读取文件(默认值是utf8)
- 参数4:必选参数:函数,在读取文件之后,通过这个函数返回拿到的读取结果
这里需要注意的是:当没找到路径上的文件时,会自行在路径上创建一个文件
但是在每次使用这个函数写了之后会覆盖之前的内容 ,其他方法和fs.readFile()方法一致
我只能说无需多言!!!