目录
fs模块简介fs.readFile()fs.writeFile()fs.copyFile()用fs.readFile()和fs.writeFile()实现fs.copyFile()fs.unlink()fs.mkdir()fs.rmdir()fs模块简介
fs模块
是Node.js官方提供的、用来操作文件的模块。它提供了一系列的方法和属性,来满足用户对文件的操作需求。
如果要在JavaScript代码中使用fs模块来操作文件,则需要使用如下的方式导入:
const fs = require('fs')
模块中的所有方法都有同步和异步两种方法。
同步就是给方法后加上Sync
。
比如:
fs.resdFile()异步读取fs.readFileSync()同步读取
fs.readFile()
使用fs.readFile()方法,可以读取指定文件中的内容,语法格式如下:
fs.readFile(path[,options],callback)
参数解读:
参数1:path必选参数,字符串,表示文件的路径。
参数2:options可选参数,表示以什么编码格式来读取文件。
参数3:必选参数,文件读取完成后,通过回调函数拿到读取的结果。
示例:
const fs = require('fs'); // 引入fs模块fs.readFile('./test.txt','utf8',function(err, data) {if (err) {return console.log('文件读取失败!'+ err.message);}// 读取文件成功console.log('文件读取成功,内容是' + data);});
fs.writeFile()
使用fs.writeFile()方法,向指定文件中写入内容,语法格式如下:
fs.writeFile(filename,data[,options],callback)
参数解读:
参数1:filename必选参数,需要指定一个文件路径的字符串,表示文件的存放路径。
参数2:data必选参数,表示要写入的内容。
参数3:可选参数,表示以什么格式写入文件内容,默认值是utf8。
参数4:callback必选参数,文件写入完成后的回调函数。
示例:
const fs = require('fs'); // 引入fs模块// 写入文件内容(如果文件不存在会创建一个文件)// 写入时会先清空文件fs.writeFile('./test.txt','abcd','utf8',function(){if(err){return console.log('文件写入失败!' + err.message)}console.log('文件写入成功!')})
fs.copyFile()
使用fs.copyFile()方法,copy指定文件夹
示例:
const fs = require('fs');fs.copyFile('../files/readme.txt','../files/readme copy.txt',function(){console.log('复制成功')})
用fs.readFile()和fs.writeFile()实现fs.copyFile()
代码如下:
let fs=require('fs');//读取temp.txt文件fs.readFile('../files/temp.txt',function(err,data){if(!err){let result = data.toString()//给temp copy.txt文件写入内容fs.writeFile('../files/temp copy.txt',result,()=>{console.log('写入成功')})}})
fs.unlink()
删除文件
示例:
let fs = require('fs');//删除文件fs.unlink('../files/readme copy.txt',function(){console.log('删除成功')})
fs.mkdir()
创建文件夹
示例:
function createDirectory(){fs.mkdir('../files/ff',()=>{console.log('创建文件夹成功')})}
fs.rmdir()
删除文件夹
示例:
function deleteDirectory(){fs.rmdir('../files/ff',()=>{console.log('删除文件夹成功')})}