在js中,可以写任意代码,但是如果这个文件指定要被nodejs运行,就只能写ECMAScript的代码了
在nodejs中如果要实现比较强大的功能 - 借助nodejs自己封装的代码
fs - file system - 文件系统
nodejs内部封装的fs,可以让js读取文件,可写入文件
将nodejs内部封装的fs引入到当前js文件中 - require(文件)
在nodejs,使用 es6+语法
const fs = require('fs') // 得到一个变量
//给指定的文件中写入内容 - fs.writeFile()
//callback:回调函数
fs.writeFile('./a.txt', '123', function(err){
// err代表当前写入操作执行报错时的错误信息 - 如果执行成功没有报错,err就是null
console.log(err);
})
//当文件不存在,会自动创建文件并写入内容,覆盖写入
console.log(111);
fs.writeFileSync() // 同步写入
let res = fs.writeFileSync('a.txt', 'abcdef')
console.log(res);
console.log(111);
//读取a.txt文件中的内容
//fs.readFile()
fs.readFile('a.txt', function(err, data){
// err读取的错误信息,没有错误,err是null
console.log(err);
// data是读取出来的数据
console.log(data); // nodejs中有一种数据较buffer,以16进制的数据描述数据的
// buffer数据可以调用toString方法,将buffer转成字符串
console.log(data.toString());
})
console.log(111);
//同步读取方法 - fs.readFileSync()
var data = fs.readFileSync('a.txt')
console.log(data.toString());
console.log(1);