四、文件目录读取
4.1、主要接口方法
- 导入文件模块:
require('fs');
- 同步删除文件方法:
fs.readdirSync(path[, options])
- 异步删除文件方法:
fs.readdir(path[, options], callback)
4.2、异步读取目录步骤
// 导入文件模块
let fs = require('fs');
fs.readdir('../NodeStudy2--文件管理', (err, files) => {
if(err) {
console.log('读取失败')
}else {
console.log(files)
}
})
4.3、可配合之前的操作
可以配合之前的,文件读取、文件写入,做一个小需求
读取到这个文件夹的文件,把内容提取出来,全部放在一个新文件上
将之前的操作封装的方法,全部module.exports出来
module.exports = function fsReadFile (path) {
return new Promise(function (resolve, reject) {
fs.readFile(path, {flags: 'r', encoding: 'utf-8'}, function (err, data) {
if (err) {
// 失败
reject(err)
} else {
// 成功
resolve(data)
}
})
})
}
使用
// 导入文件模块
let fs = require('fs');
// 导入读取文件方法
let fsReadFile = require('./read.js')
// 导入写入文件方法
let fsWriteFile = require('./write.js')
fs.readdir('../NodeStudy2--文件管理', (err, files) => {
if(err) {
console.log('读取失败')
}else {
// 读取到,便开始需求
readList(files)
}
})
/**
* 循环读取file的名字,
* 并且读取内容
* 然后一起写入到一个文件中
*
* @param {} files
*/
function readList(files) {
// 循环每一个文件
files.forEach(async v => {
// 获取文件的内容
let str = await fsReadFile(v)
// 写入文件的内容
await fsWriteFile('fs.js', str.trim(), 'a')
console.log('写入成功')
});
}
五、文件目录删除
4.1、主要接口方法
- 导入文件模块:
require('fs');
- 同步删除文件方法:
fs.rmdirSync(path[, options])
- 异步删除文件方法:
fs.rmdir(path[, options], callback)
4.2、异步删除目录步骤
// 导入文件模块
let fs = require('fs');
fs.readdir('../NodeStudy2--文件管理', (err, files) => {
if(err) {
console.log('读取失败')
}else {
console.log(files)
}
})