fs模块是node.js官方提供的,用来操作文件的模块,提供了一系列的方法和属性,用来满足用户对文件的操作需求。
在使用之前,需要导入,使用require方法来导入
const fs = require('fs')
读取指定文件的内容
fs.readFile(path,[options],callback)
其中,path代表文件路径,
options是可选参数,表示以什么编码格式来读取文件。
callback,文件读取完成后,通过回调函数拿到读取结果。
以utf8的编码格式,读取指定文件的内容,并打印err和dataStr内容
const fs=require('fs')
fs.readFile('./files/11.txt','utf8',function(err,dataStr){
console.log(err)
console.log('-----')
console.log(dataStr)
})
如果读取成功,则err的值为null。如果读取失败,则err的值为错误对象,dataStr的值为undefined。
判断文件是否读取成功
const fs=require('fs')
fs.readFile('./files/1.txt','utf8',function(err,result){
if(err){
return console.log('文件读取失败'+err.message)
}
console.log('文件读取成功,内容是'+result)
})
fs.writeFile(file,data,[options],callback)
file,文件路径的字符串,表示文件的存放路径
data,表示要写入的内容
options,表示以什么格式写入文件。可选参数
callback,文件写入完成后的回调函数
const fs=require('fs')
fs.writeFile('./files/2.txt','hello node.js',function(err){
console.log(err)
})
如果文件写入成功,则err的值为null。
如果文件写入失败,则err为错误对象。
判断是否写入成功
const fs=require('fs')
fs.writeFile('./files/2.txt','hello node.js',function(err){
if(err){
return console.log('文件写入失败,'+err.message)
}
console.log('文件写入成功')
})
const fs=require('fs')
fs.readFile('./成绩.txt','utf8',function(err,dataStr){
if(err){
return console.log('读取失败'+err.message)
}
//console.log('读取成功'+dataStr)
//先把成绩按照空格,打印出来
const arrold=dataStr.split(' ')
//console.log(arrold)
//循环分割后的数组
const arrNew=[]
arrold.forEach(item =>{
arrNew.push(item.replace('=',':'))
})
console.log(arrNew)
//把新数组中的每一项,进行合并,得到一个新的字符串
const newStr=arrNew.join('\r\n')
console.log(newStr)
//调用写方法,写入
fs.writeFile('./files/1.txt',newStr,function(err){
if(err){
return console.log('文件写入失败,'+err.message)
}
console.log('文件写入成功')
})
})