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)
})
相关推荐
天意pt11 小时前
Blog-SSR 系统操作手册(v1.0.0)
前端·vue.js·redis·mysql·docker·node.js·express
程序员iteng14 小时前
AI一键图表生成、样式修改的绘图开源工具【easy-draw】
spring boot·开源·node.js
2301_8187320617 小时前
安装了node,但是cmd找不到node和npm,idea项目也运行失败 已解决
前端·npm·node.js
Benny的老巢20 小时前
【n8n工作流入门02】macOS安装n8n保姆级教程:Homebrew与npm两种方式详解
macos·npm·node.js·n8n·n8n工作流·homwbrew·n8n安装
2301_8187320621 小时前
下载nvm后,通过nvm无法下载node,有文件夹但是为空 全局cmd,查不到node和npm 已解决
前端·npm·node.js
亮子AI1 天前
【MySQL】node.js 如何判断连接池是否正确连接上了?
数据库·mysql·node.js
a程序小傲1 天前
【Node】单线程的Node.js为什么可以实现多线程?
java·数据库·后端·面试·node.js
程序员爱钓鱼2 天前
Node.js 编程实战:测试与调试 —— Mocha / Jest / Supertest 使用指南
前端·后端·node.js
冴羽2 天前
JavaScript Date 语法要过时了!以后用这个替代!
前端·javascript·node.js
张洪权2 天前
node fs 模块核心 api
node.js