06-fs文件模块

本笔记记录fs文件模块的使用

  • fs文件模块主要用于对文件和文件夹的操作,常用增删改查的操作。
  • fs文件模块有很多方法,这里通过代码一一解释。
// 引入fs文件模块
const fs = require('fs');
// 1.fs.stat:检测路径下是文件还是文件夹
fs.stat('../',( err, Stats ) => {
    //判断路径下有没有文件或者文件夹
    if(err){
        console.log( err ); //路径出错
        return false; //必须返回false退出函数,否则会报错
    }
    // 判断是文件还是文件夹
    // E:\web_workplace\web-nodejs\02-urlandfs判断这个路径最后是文件夹还是文件
    console.log(`文件:${Stats.isFile()}`); //false
    console.log(`文件夹:${Stats.isDirectory()}`); //true
});

// 2.fs.mkdir:创建文件夹
// 注意:同一个文件夹名不能反复创建
fs.mkdir('javascript', (err) => {
    if(err){
        console.log( err ); //路径出错
        return false; //必须返回false退出函数,否则会报错
    }
    console.log('创建文件夹成功!');
});

// 3.fs.writeFile:创建文件并写入内容
// 注意:同一内容不会在第二行反复写入,且后写入内容会覆盖前写入内容
fs.writeFile('./newfile.txt', '这是写入的内容!!!', (err)=>{
    if(err){
        console.log( err ); //路径出错
        return false; //必须返回false退出函数,否则会报错
    }
    console.log('写入成功!');
});

// 4.fs.appendFileSync在文件中追加内容
// 可以重复追加同一内容
fs.appendFileSync('./newfile.txt','这是追加内容!');

// 5.fs.readFile:读取文件内容
fs.readFile('./newfile.txt', (err, data)=>{
    // 如果读取出错,打印错误信息
    if(err){
        console.log( err ); //路径出错
        return false; //必须返回false退出函数,否则会报错
    }
    // 直接打印出来的是Buffer格式
    console.log(data); //输出结果:<Buffer e8 bf 99 e6 ... 1 more byte>
    // 因此需要对读的格式进行限定,引用data下的方法
    // 输出结果为字符串格式,如果文件是js文件也可以打印出字符串内容
    console.log(data.toString()); //输出结果:这是写入的内容!!!这是追加内容!
});

// 注意:fs.readFile读取路径如果为文件夹,则无法读取到文件夹下文件的内容
// 会报错非法操作:[Error: EISDIR: illegal operation on a directory, read]

// 6.fs.readdir:读取文件夹下的内容
fs.readdir('./javascript', (err, data)=>{
    if(err){
        console.log( err ); //路径出错
        return false; //必须返回false退出函数,否则会报错
    }
    console.log( data ); //输出结果:[ 'file.txt', 'index.js' ]
});

// 7.fs.rename:修改文件夹或者文件的名字
fs.rename('./javascript', './renamefile', (err)=>{
    if(err){
        console.log( err ); //路径出错
        return false; //必须返回false退出函数,否则会报错
    }
    console.log('修改文件名成功!');
})

// 8.fs.renameSync:剪切文件内容到其它路径
// 因为是剪切,原来路径文件会消失,到其它路径,并可以重命名
fs.renameSync('./newfile.txt','./javascript/renamefile.txt');

// 9.fs.rmdir:删除目录或者文件夹
// 注意:删除的文件夹下必须为空,否则会报错
fs.rmdir('./java', (err)=>{
    if(err){
        console.log( err ); //路径出错
        return false; //必须返回false退出函数,否则会报错
    }
    console.log('删除文件夹成功!');
})

// 9.fs.unlink:删除文件
fs.unlink('./javascript/file.txt', (err)=>{
    if(err){
        console.log( err ); //路径出错
        return false; //必须返回false退出函数,否则会报错
    }
    console.log('删除文件成功!');
})
  • 文件模块常用方法如上,有注意要点也通过注释展现。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

沐沐茶壶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值