node笔记(五) fs文件系统

本文详细介绍使用Node.js进行文件系统操作的方法,包括读取、写入、重命名及删除文件等常见操作,并介绍了如何利用流来高效地处理大文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.读取文件

const fs = require('fs');
fs.readFile('./modA.js','utf8', (err,data) => {
    if (err) throw err;
    console.log(data);
})

// 同步读取
const modb = fs.readFileSync('./modB.js','utf8')
console.log(modb)

2.写文件

const fs = require('fs');
const content = Buffer.from('this is a test.')
fs.writeFile('./test', content, err => {
  if (err) throw err;
  console.log('ok')
})

3.fs.Stats()   传入对象的类型以及内容。 

const fs = require('fs');
fs.stat('./modB.js',(err, stats) => {
  if (err) {
    console.log('文件不存在');
    return;
  }
  // 是否是文件
  console.log(stats.isFile())
  // 是否是文件夹
  console.log(stats.isDirectory());
  console.log(stats);
})

4.fs.rename()  修改文件名

const fs = require('fs');
fs.rename('./test', 'test2.txt', err => {
  if(err) throw err;

  console.log('ok')
})

5.fs.unlink()  删除文件名 

const fs = require('fs');
fs.unlink('test2.txt', err => {})

6.fs.readdir() 查看文件夹的信息

const fs = require('fs');

fs.readdir('./',(err, files) => {
  if (err) throw err;

  console.log(files)
})

7.fs.mkdir() 创建文件夹

const fs = require('fs');

fs.mkdir('test',err => {
})

8.fs.rmdir()  删除文件夹

const fs = require('fs');

fs.rmdir('test',err => {
})

9.fs.watch()监听文件变化

const fs = require('fs');

fs.watch('./', {
  // 指示监听所有子目录
  recursive: true
}, (eventType, filename) => {
  console.log(eventType, filename)

})

10.fs.createReadStream() 读取文件流,从文件中读取一定范围的字节而不是读取整个文件。

const fs = require('fs');

const rs = fs.createReadStream('./modB.js');
rs.pipe(process.stdout)

11.fs.createWriteStream() 以流的方式写文件,注意写入的必须是字符串或者是buffer,不可以是数字和其他的情况。

const fs = require('fs');

const rs = fs.createWriteStream('./test.txt');

const tid = setInterval(()=>{
  const num = parseInt(Math.random()*10);
  if(num < 6) {
    rs.write(num + "")
  } else {
    clearInterval(tid);
    rs.end()
  }
},200)

rs.on('finish',() => {
  console.log("finsh!");
  
})

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值