fs文件系统模块常用的API

fs:file system 文件系统模块 是node内置的 用于本地文件或者目录的增删改查

1. 增

mkdir() 函数用于创建文件夹,第一个参数是一个相对路径 第二个路径是一个回调函数

fs.mkdir("./myDir",function(){
  console.log("创建成功");
});

writeFile()  写入文件 如果文件不存在 会自动创建并写入 如果文件里面有数据,会把原来的数据覆盖掉

fs.writeFile("./myDir/text.txt","罗志祥",result=>{
 写入失败的时候,回调函数的参数就是错误信息对象
    写入成功  null
   if(!result){
        console.log("写入成功");
    }
});

appendFile()  写入文件 如果文件不存在 会自动创建并写入,如果存在会把新的数据追加到原有数据的后面

fs.appendFile("./myDir/text.txt","吴亦凡",err=>{
    if(!err){
        console.log("写入成功");
    }
})

2. 删

unlink()  删除文件

 // 删除文件  不能边写边删
fs.unlink("./myDir/1.txt",err=>{
    if(!err){
        console.log("删除成功");
    }
});

rmdir()  删除文件夹

fs.rmdir("./myDir/文件夹",err=>{
    if(!err){
        console.log("删除成功");
    }
})

3. 改

rename()  可以修改文件或者文件夹的名字和位置

fs.rename("./myDir/2.txt","./myDir/dome.js",err=>{
    if(!err){
        console.log("修改成功");
    }
})

修改文件夹

fs.rename("./myDir","./abc",err=>{
    if(!err){
        console.log("修改成功");
    }
})

修改文件位置

fs.rename("./abc/dome.js","./myDir/dome.js",err=>{
    if(!err){
        console.log("修改成功");
    }
})

4. 查

exists()  判断文件夹或者文件是否存在 返回值是一个布尔值

fs.exists("./myDir/dome.js",flag=>{
    // 回调函数的参数是一个布尔值,如果存在返回true 不存在返回false
    if(flag){
        console.log("存在");
    }
})

stat() 、access()   判断文件或者文件夹是否存在

fs.stat("./myDir/a.txt",err=>{
    // 如果不存在 回调函数的参数就是错误信息对象 存在返回 null
    if(!err){
        console.log("存在");
    }
});
fs.access("./myDir/a.txt",err=>{
    if(!err){
        console.log("存在");
    }
})

5. 读

isFile() 判断是否是文件

isDirectory() 判断是否是文件夹

readFile()  读取文件中的数据信息

fs.readFile("./abc/text.txt",(err,data)=>{
    // 回调函数的第二个参数 就是读取到的信息
    // 读取到的信息是一个buffer格式的数据(buffer是内存中的缓存数据格式
    // 可以调用toString() 转成字符串
    if(!err){
        console.log(data.toString());
    }
});

readdir() 读取文件夹中的信息  

fs.readdir("./myDir", (err, data) => {
    // 回调函数第二个参数是读取的数据信息(读取成功得到数组,读取失败得到undefined)
    if (!err) {
        // data数组中 只包含子文件和子文件夹,不包含二级子文件夹中的信息
        console.log(data);
    }
})

以上使用的API都是异步函数 fs中同时提供了相应的同步函数

    异步函数:可以同时执行多个函数,函数的执行结果从回调函数中获取

    同步函数:只有上一个函数执行结束,才执行下一个,函数执行的结果从返回值获取

举例:读取 ./abc/text.txt中的信息

1. 异步函数的写法

fs.exists("./abc/text.txt",flag=>{
        if(flag){
            fs.readFile("./abc/text.txt",(err,data)=>{
                if(!err){
                    console.log(data.toString());
                }
            })
        }
    });

2.同步函数写法

var flag = fs.existsSync("./abc/text.txt");
    // console.log(flag); // true
    if(flag){
        var res = fs.readFileSync("./abc/text.txt");
        console.log(res.toString());
    }

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值