nodejs 文件系统(fs)

Node提供fs模块来操作文件。最常用的是:

  • fs.readFile():异步读取文件

  • fs.writeFile():写入文件

  • fs.readdir():读取目录

  • fs.stat():查看文件信息

1.fs.readFile() ------ 异步读取文件

语法:

css 复制代码
fs.readFile(path[, options], callback)

path: 路径

option: 可选,指定编码(如 'utf8')等

callback: 回调函数,data 是文件内容

javascript 复制代码
fs.readFile('./test.txt','utf-8',(err,data)=>{
  if(err){
    console.error('读取失败',err)
    return
  }
  console.log('文件内容',data);
  
})
2.fs.writeFile()------写入文件,如果文件不存在就自动创建

语法:

css 复制代码
fs.writeFile(file, data[, options], callback)

file: 路径

data:写入的内容

option: 可选,指定编码(如 'utf8')等

callback: 写入完成时调用

javascript 复制代码
fs.writeFile('./output.txt','ahhhhhhh','utf-8',err=>{
  if(err){
    console.error('写入失败',err)
  }
  console.log('写入成功');
  
})
3. fs.readdir() ------ 读取目录内容

语法

css 复制代码
fs.readdir(path[, options], callback)

path: 路径

option: 可选,指定编码(如 'utf8')等

callback: 回调函数,file 是文件名数组

javascript 复制代码
fs.readdir('./static',(err,files)=>{
  if(err){
    console.error('读取目录失败',err)
    return
  }
  console.log('目录内容',files);
})
4. fs.stat() ------ 查看文件或目录信息

语法

lua 复制代码
fs.stat(path, callback)

获取文件或目录的详细信息(大小、类型、时间等) callbak:回调函数,stats 是一个 fs.Stats 对象

javascript 复制代码
fs.stat('./test.txt',(err,stats)=>{
  if(err){
    console.error('获取信息失败',err)
    return
  }
  console.log('是文件吗?',stats.isFile());
   console.log('是文件吗?', stats.isFile())
  console.log('是目录吗?', stats.isDirectory())
  console.log('文件大小:', stats.size, '字节')
  console.log('创建时间:', stats.birthtime)
  console.log('修改时间:', stats.mtime)
})
相关推荐
wno70417 小时前
node.js中使用jquery
前端·node.js·jquery
damoluomu1 天前
Node 的 Headless 出厂没有前台,Java 的 Headless 是从门户里长出来的
java·开发语言·node.js
Dumbness1 天前
一个手机号验证码登录接口的五个坑:无限发码、无限试码,传个数字就让 Express 进程退出
node.js·express
怒放的生命19912 天前
本地用 pnpm 省磁盘,团队继续用 npm:极简实践
前端·npm·node.js
Hone2 天前
我把「自动发文章到掘金」做成了一个 Agent 技能:juejin-skills
node.js·ai编程·前端工程化
Dumbness3 天前
二十行手写的 SKILL.md 头部解析,遇到 YAML 的折叠写法、单引号和嵌套键就读错:和 js-yaml 逐条对照
node.js·ai编程
只睡四小时3 天前
MCP 弃用 SSE?Node 分帧漏 81.7% 事件
node.js·webassembly·实时通信·mcp·streamable http
hey you~4 天前
个体户门店办理400电话,如何对接订单系统实现来电弹窗
node.js·webhook·400电话·门店数字化·来电弹窗·订单系统对接
YIAN5 天前
RAG 学到最后,我真正学会的不是“检索”,而是让系统知道自己缺什么
langchain·node.js·llm