Nodejs 对 内置模块fs简单使用技巧与操作方法,模块文件夹的curd与文件的curd

1.对nodejs内置模块fs的简单操作与使用方法,对文件夹和文件进行同步和异步操作时,异步需要使用callback回调函数,同步则不需要,而在异步操作中,都是错误的回调优先
  • 1.如对nodejs是什么,以及nodejs npm配置源是什么不知可查看nodejs简介
  • 2.要使用nodejs内置模块,那么就要引用fs 引用方式 const fs = require(‘fs’)
2.引用内置模块之后对文件夹的curd使用,及 create创建 update 修改 read 读取 delete删除
对文件夹操作的方法对下面的
  • 参数path代指路径,[options]参数类型,用中括号包起的可以不填,callback回调函数,一般只有进行异步操作时才会用到,
    • fs.mkdir(path[, options], callback)异步创建文件夹,当文件夹存在的时候,不可创建
    • fs.mkdirSync(path[, options])同步创建文件夹
      //oldPath旧的路径 newPath新的路径
    • fs.rename(oldPath, newPath, callback)异步修改文件夹名
    • fs.renameSync(oldPath, newPath)同步修改文件夹名
    • fs.readdir(path[, options], callback)异步读取文件夹
    • fs.readdirSync(path[, options])同步读取文件夹
    • fs.rmdir(path[, options], callback)异步删除文件夹
    • fs.rmdirSync(path[, options])同步删除文件夹
fs.mkdir()创建文件夹,当文件夹存在的时候,不可创建
// 异步创建文件夹,
fs.mkdir('./www01',function(err){//对文件夹异步操作时只需要err,不需要data,只要告诉我是否创建成功就行了
//callback回调函数中错误的回调优先,意思就是发生错误时不执行后面的参数,err本身为null,当发生错误,打印错误对象
    console.log(err);
})

// 同步创建文件夹
fs.mkdirSync('./www02');

// 异步读取文件夹
fs.readdir('../node01',function(err,data){
    if(!err){
        console.log(err);
        console.log(data);
    }
})
// 同步读取文件夹
const data = fs.readdirSync('../node01');
  console.log(data);

// 异步修改文件夹
fs.rename('./www02','./hhh',function(err){//对文件夹修改只需要err,只要告诉我是否修改成功就行了
   if(err){
    console.log('修改失败');
    throw err
   }else{
    console.log("修改成功"); 
   }
})
// 同步修改文件夹,当我们同步操作文件夹时发生错误,那么程序就会终止下面的执行
// 那肯定不能因为一个错误,将程序终止,所以用trycatch捕获异常
try {
    fs.renameSync('./hhh','./aaa');
} catch (err) {
     err;
}
fs.renameSync('./hhh','./aaa');
console.log(2222);


// 异步删除文件夹
fs.rmdir('./www01',(err)=>{
    if(err){
        console.log('删除失败');
        throw err;
    }
    console.log('删除成功');
})

// 同步删除文件夹,文件夹必须是空文件夹
fs.rmdirSync('./aaa');
3.引用内置模块fs之后对文件的curd使用,及 create创建 update 修改 read 读取 delete删除
  • 参数file代指文件名,path代指路径,data代指文件中的数据,[options]参数类型,用中括号包起的可以不填,callback回调函数,一般只有进行异步操作时才会用到,###这里需要注意执行程序时,异步后行,####下面有举例
    • fs.writeFile(file, data[, options], callback)//异步创建文件
    • fs.writeFileSync(file, data[, options])//同步创建文件
    • fs.readFile(path[, options], callback)//异步读取文件
    • fs.readFileSync(path[, options])//同步读取文件
    • fs.appendFile(path, data[, options], callback)//异步修改文件内容
    • fs.appendFileSync(path, data[, options])//同步修改文件内容
    • fs.unlink(path, callback)//异步删除文件
    • fs.unlinkSync(path)//同步删除文件
// 创建文件(写入文件)
//异步写入文件
// fs.writeFile('./www/hello1.txt','这是第123个插入文本日志',(err)=>{
//     if(!err){
//         console.log(err);
//     }
// })
//同步写入文件 
// const data = fs.writeFileSync('./www/haha.txt','这是第一个插入文本日志');
// console.log(data);
 
//异步读文件
// console.log(1111);
// fs.readFile('./www/haha.txt','utf8',function(err,data){//先打印222,我们知道程序从上往下执行,而读取文件时执行回调函数需要时间
//     if(!err){
//         //从文件中读出的数据默认是二进制数据 binary 
//         // 方法一:
//         // console.log(data.toString('utf8'));
//         //方法二直接在方法中设置options类型
//         console.log(data);
//     }
// })
// console.log(2222);//先打印222,我们知道程序从上往下执行,而读取文件时执行回调函数需要时间
//同步读取文件
// const data = fs.readFileSync('./www/hello.txt');
// console.log(data.toString('utf8'))

//异步修改文件也可以是追加内容
// fs.appendFile('./www/hello.txt','\n 我们要对其进行修改数据',(err)=>{
//     if(!err){
//         console.log('修改成功');
//     }
// });

//同步修改后追加内容
// fs.appendFileSync('./www/hello','\n 事说'+new Date());

//异步删除文件
// fs.unlink('./www/hello.txt',(err)=>{
//     if(!err){
//         console.log('删除成功')   
//     }
// })

//同步删除文件
// fs.unlinkSync('./www/hello1.txt');
发布了19 篇原创文章 · 获赞 139 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/NanQiao1716/article/details/104680879