Skip to content

文件

fs 模块是一个核心模块,用于处理文件系统相关的操作。fs 模块提供了许多同步和异步的方法,可以方便地进行文件的读写、目录的创建和删除等操作。

常用操作

js
fs.readFile(path) // 异步读取文件内容。

fs.writeFile(path) // 同步写入文件内容。

fs.mkdir(path) // 异步创建目录。

fs.readdir(path) // 异步读取目录内容。

fs.exists(path) // 检查文件或目录是否存在。

fs.stat(path) // 获取文件或目录的状态信息。

fs.watch(path) // 监视文件或目录的变化。

fs.createReadStream(path) // 创建可读流。

fs.createWriteStream(path) // 创建可写流。

基本操作

js
const fs = require('fs')

// 使用 fs.writeFile() 方法写入文件
fs.writeFile('message.txt', 'Hello, World!', function (err) {
  if (err) throw err
  console.log('文件已被保存')
})

// 使用 fs.readFile() 方法读取文件
fs.readFile('message.txt', function (err, data) {
  if (err) throw err
  console.log(data.toString())
})

首先使用 fs.writeFile() 方法将字符串 'Hello, World!' 写入文件 message.txt 中。回调函数用于处理写入结果,如果出现错误,则抛出错误;如果写入成功,则输出提示信息。

操作流

在操作较大文件时,适合流操作,因为分段减少内存占用。

js
const fs = require('fs')

// 创建可写流并写入数据
const writeStream = fs.createWriteStream('output.txt')
writeStream.write('Hello, World!')
writeStream.end()

// 创建可读流并读取数据
const readStream = fs.createReadStream('output.txt', 'utf8')
readStream.on('data', function (chunk) {
  console.log(chunk)
})

首先使用 fs.createWriteStream() 方法创建一个可写流,并将字符串 'Hello, World!' 写入文件 output.txt 中。注意,在使用可写流时需要调用 end() 方法来标记数据的结束。