Node.js 内置模块之 fs

fs(File system,文件系统) 是 node 的一个内置模块,可用于在多种操作系统中(Windows 、macOS 等)对文件进行操作。查阅 node 的官方文档,可以看到 File system 下有非常多的 API:

它们有的用于对文件进行读写操作,有的用于对文件夹操作等,且都提供同步异步Promise 这 3 种操作方式。下面举几个常用的 API 为例,进行说明。

操作文件

读取文件

同步读取

fs.readFileSync() 用于同步 (Sync) 读取文件,直接传入要读取的文件的路径或文件描述符即可:

// 代码块 1.1.1
const fs = require('fs')
// 同步读取
const resSync = fs.readFileSync('./test.txt')
console.log(resSync)
console.log('看看会不会阻塞') 

执行结果如下,第 6 行的打印是在第 5 行之后,说明同步操作会阻塞后续代码的运行:

resSync 的结果是 Buffer 对象,本质上是二进制的内容,只是以十六进制来展示。如果想看到文本内容,可以对结果使用 toString() 进行转换:console.log(resSync.toString()),或者给 fs.readFileSync() 传入第 2 个参数 —— 一个用于指定配置的可选对象,该对象有 2 个属性:

  • encoding,默认值为 null ,也就是结果显示为 buffer,想显示文本可以改为 'utf-8' (或 'utf8');
  • flag
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值