node.js文件操作?目录操作

文件操作

//引入fs模块:fs模块是对文件或目录的操作
const fs = require('fs');

console.log(__dirname); //当前路径 
console.log(__filename);
//异步方式读取文件内容
fs.readFile(`${__dirname}/123.txt`, function(x, y) {
    console.log(x, y, y.toString());
});
//写文件:fs.writeFile()、fs.writeFileSync();
fs.writeFileSync(`${__dirname}/123.txt`, 'Hello web', { flag: 'a+' });  //a+为追加

目录操作

const fs = require('fs');
//判断文件或目录是否存在:fs.exists()、fs.existsSync()
if (!fs.existsSync(`${__dirname}/test`)) { //如果test文件夹不存在时则创建
    fs.mkdirSync(`${__dirname}/test`);
}

//删除目录:fs.rmdir()、fs.rmdirSync()  
//注意:只能删除空目录
fs.rmdirSync(`${__dirname}/test`);
fs.rmdirSync(`${__dirname}/mydemo`);
//删除文件:fs.unlink()、fs.unlinkSync();
fs.unlinkSync(`${__dirname}/mydemo/321.txt`);
//给目录或文件重命名:fs.rename()、fs.renameSync()
 fs.renameSync(`${__dirname}/test`, `${__dirname}/mytest`);
//读取目录:fs.readdir()、fs.readdirSync()

let arr = fs.readdirSync(__dirname);
// console.log(arr);
for (let fname of arr) {
    // console.log(fname, 333);

    //获取文件或目录的状态:fs.stat()、fs.statSync()
    let stat = fs.statSync(`${__dirname}/${fname}`);
    // console.log(stat, 111);

    //stat.isFile():判断是否为文件
    //stat.isDirectory():判断是否目录
    if (stat.isFile()) { //为文件
        console.log(`文件:${fname}`);
    } else { //为目录
        console.log(`目录:${fname}`);
    }
}

路径模块

let path = require('path');
let filePath = 'a/b/c/a.txt';
console.log(path.parse(filePath));
console.log(path.basename(filePath)); //解析文件名
console.log(path.extname(filePath)); //解析后缀
let s = path.join("a/c/d", '..', 'a.txt'); //..上级文件夹

console.log(s);
console.log(path.join(__dirname, "a.txt"));
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

CongJiYong

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

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

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

打赏作者

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

抵扣说明:

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

余额充值