node基础之一:fs 模块

概念:文件的创建、删除、重命名、移动、写入、读取等

javascript 复制代码
const fs = require("fs");

// 写入
fs.writeFile("./demo.txt", "hello", (err) => {});
fs.writeFileSync();

// 追加
fs.appendFile("./demo.txt", "hello", (err) => {});
fs.appendFileSync();
fs.writeFile("./demo.txt", "hello", { flag: "a" }, (err) => {});

// 流式写入
const ws = fs.createWriteStream("./demo.txt");
wx.write("hello\r\n");
wx.close();

// 读取
fs.readFile("./demo.txt", (err, data) => {});
fs.readFileSync("./demo.txt");

// 流式读取
const rs = fs.createReadStream("./demo.txt");
rs.on("data", (chunk) => {}); // 读取一块数据后执行回调
re.on("end", () => {});

// 重命名/移动
fs.rename("./demo.txt", "./new.txt", (err) => {});
fs.renameSync();

// 删除
fs.unlink("./demo.txt", (err) => {});
fs.unlinkSync();
fs.rm("./demo.txt", (err) => {});
fs.rmSync();

// 创建文件夹
fs.mkdir("./demo", (err) => {});
fs.mkdir("./a/b/c", { recursive: true }, (err) => {});

// 读取文件夹
fs.readdir("./demo", (err, data) => {});

// 删除文件夹
fs.rmdir("./demo", (err) => {});
fs.rmdir("./demo", { recursive: true }, (err) => {});
fs.rm("./demo", { recursive: true }, (err) => {});

// 查看资源状态
fs.stat("./demo.txt", (err, data) => {});

// 路径
__dirname; // 所在文件所在目录的绝对路径 D:\code\notes\docs\node and npm
__filename; // 文件的绝对路径           D:\code\notes\docs\node and npm\node-demo.js

下一章:node基础之二:path 模块

相关推荐
计算机魔术师4 分钟前
在 M1 Max 上运行 2.8T 参数的 Kimi K3:Deltafin 项目实现 0.0687 token/s 推理
前端
黄林晴5 分钟前
你敢信吗?同样是跨端,KMP 跟 RN 居然差这么多!
android·前端
windliang7 分钟前
Claude Code 源码分析(四):Tool 工具系统-从 Schema 到真实执行
前端·ai编程·claude
10WTW0143 分钟前
Sprite-Motion-Lab:雪碧图动画编辑器
前端·css·雪碧图·spritemotionlab·10wtw01
夏天要喝冰可乐1 小时前
用 Gitee Go 搭建WorkBuddy云端定时任务
前端·ai编程
天天鸭1 小时前
5 万处中文的老项目实现国际化,如何用架构思维完成改造?
前端·javascript·架构
程序员黑豆2 小时前
鸿蒙应用开发之持久化存储解析:PersistentStorage / PersistenceV2 / preferences 选型与实战
前端·harmonyos
明月_清风2 小时前
🚀 OpenAI 数据代理架构全解析:从 600 PB 到自然语言的六层上下文工程
前端·后端·架构
用户847181054192 小时前
从0开始打造自己的个人智能体(一)——Deep Agents js环境配置与对话入门
node.js·agent
明月_清风2 小时前
🚀 从 Foundry 到 AIP:Palantir 发生了什么变化?一篇文章全搞懂
前端·后端