You need to enable JavaScript to run this app. Node.js 如何直接读取文件内容不返回Buffer及删除文件夹的方法
优惠活动
大模型
产品
解决方案
定价
更多

Node.js 如何直接读取文件内容不返回Buffer及删除文件夹的方法

Node.js 实操问题解决方案

读取文本文件时直接获取内容、避免返回Buffer的实现

Node.js 内置fs模块的文件读取方法,在未显式指定编码参数时,默认会返回Buffer类型的二进制原始数据。如果需要直接拿到read.txt这类文本文件的实际可读内容,只需要在读取调用时传入对应的编码参数即可,不需要额外做Buffer转字符串的手动处理。

  • 回调形式fs.readFile实现:
const fs = require('fs')
// 第二个参数传入'utf8'编码
fs.readFile('./read.txt', 'utf8', (err, data) => {
  if (err) throw err
  // 此处data直接为文件文本内容,不再是*Buffer类型*
  console.log(data)
})
  • Promise形式fs.promises.readFile实现:
const fs = require('fs/promises')
async function getFileContent() {
  // 同样传入编码参数
  const content = await fs.readFile('./read.txt', 'utf8')
  console.log(content)
}

注意:如果读取的是图片、音视频这类二进制资源,才需要保留默认的Buffer类型返回值,文本类文件使用utf8编码是最通用的处理方案。

Node.js 环境下删除文件夹的实现

不同Node.js版本的目录删除能力存在差异,可根据运行环境选择对应实现:

  • Node.js v14.14.0 及以上版本:直接使用内置fs.rm/fs.rmSync方法,开启递归参数即可删除包含子文件、子目录的文件夹,无需依赖第三方工具库
const fs = require('fs')
// 同步删除目标目录,配置参数说明:
// recursive: true 递归删除目录下所有层级的内容
// force: true 目录不存在时不抛出异常
fs.rmSync('./target-folder', { recursive: true, force: true })
  • 低版本Node.js兼容实现:对于未支持fs.rm的旧版本,可使用fs.rmdir开启递归参数完成删除
const fs = require('fs')
fs.rmdir('./target-folder', { recursive: true }, (err) => {
  if (err) throw err
})

提醒:目录删除操作不可逆,执行前务必校验目标路径,避免误删业务文件。

内容的提问来源于stack exchange,提问作者sayandey_dev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.11.10 06:54:03