Node 内置模块fs
功能:操作文件或是目录
-
文件
- 增:writeFile(路径,内容 , 错误优先的回调)
- 删:unlink(路径, 错误优先的回调)
- 改:appendFile(路径,内容 , 错误优先的回调)
- 查:readFile(路径, 错误优先的回调)
案例如下:
// 文件的操作
var fs = require('fs')//引入fs模块
// 增(创建)
fs.writeFile('./dist/1.txt', 'hello zsg', function(error) {//注意这里dist文件夹要自己先创建
if (error) throw error
})
//改
fs.appendFile('./dist/1.txt', '\nhello Node.js', 'utf8', function(error) {
if (error) throw error
console.log('文件修改成功')
})
// 查
fs.readFile('./dist/1.txt', function(error, data) {
if (error) throw error
console.log(data.toString()) // 后端读取的内容为二进制数据
console.log('文件读成功了')
})
// 删
fs.unlink( './dist/1.txt', function( error ) {
if( error ) throw error
console.log( '文件删除成功' )
})
-
目录
- 增:mkdir(路径,错误优先的回调)
- 删:rmdir(路径, 错误优先的回调)
- 改:rename(路径,重命名 , 错误优先的回调)
- 查:readdir(路径, 错误优先的回调)
案例如下:
// 目录的操作
var fs = require('fs')//引入fs模块
// 增(创建)
fs.mkdir('./dist', function(error) {//这里是创建dist文件
if (error) throw error
})
//改
fs.rename('./dist', './fs_dist', function(error) {
if (error) throw error
console.log('目录名称修改成功')
})
// 查
//创建txt文件并输入内容
for (var i = 0; i < 10; i++) {
fs.writeFile(`./fs_dist/${i}.txt`, i, function(err) {
console.log(`第${i}个文件创建成功`)
})
}
fs.readdir('./fs_dist', function(error, data) {
if (error) throw error
console.log(data) // 以文件名为元素构成的数组
for (var i = 0; i < data.length; i++) {
fs.readFile(`./fs_dist/${data[i]}`, 'utf8', function(error, content) {//这个content代表文件内容
if (error) throw error
console.log(content)
})
}
})
// 删
//注意:fs.rmdir(path,callback) 这个方法只能删除空目录
//先删除文件
fs.readdir('./fs_dist','utf-8',function ( error,data ) {
if( error ) throw error
//console.log( data ) // 以文件名为元素构成的数组
for ( var i = 0 ; i < data.length; i ++ ){
fs.unlink( `./fs_dist/${data[i]}`,function( error ) {
if( error ) throw error
})
}
})
//删除目录
fs.rmdir('./fs_dist', function( error ) {
if( error ) throw error
})