JS专属语法之fs模块
[内置模块fs]
node提供了一个内置模块叫fs(),专门用来操作文件的
导入模块
require('模块名')
//const fs = require('fs)(一般会定义一个变量名接受)
读取文件
fs.readFile('文件的路径',(err,data) =>{})
不管是读取成功,还是读取失败,都会调用这个回调函数。
如果读取失败, err里就会有错误信息。
如果读取成功, err为空, data里就会有读取的内容
写入文件
fs.writeFile('文件的路径',写入的内容,err =>{})
写入完成调用的回调函数。
如果成功err就为空,如果失败err就有值
实际应用
既然明白了语法,我们直接上案例实战
//导入fs模块
const fs= require('fs')
//读取文件
//参数1:读取的文件路径
//参数2:读取完毕的回调函数
fs.readFile('./1.txt',(err,data)=>{//如果读取成功err为空,如果读取失败err有值if(!err){//读取成功,data有值//默认读取到的是这个文件的二进制(0和1的组合)的16进制 的表现形式//console.log('读取成功',data);//如果想把他转换成字符串,只需要调用toString()方法即可console.log('读取成功',data.toString());}else{//读取失败err有值console.log('读取失败,err');}
})const str =`
一点朱唇万人尝\n
一双玉璧万人枕\n
`
//写入内容
//参数一:写入文件路径(写入时不存在这个文件,会自动帮你创建)
//参数二:写入的内容
//参数三:回调函数(完成的回调函数)
fs.writeFile('./4.txt',str,err =>{if(err){console.log('写入失败');}else{console.log('写入成功');}
})
//如果写入时有这个文件,就是新内容替换fs.readFile('./4.txt',(err,data)=>{if(!err){console.log('读取成功',data.toString());}else{console.log('读取失败,err');}
})