nodejs文件系统
菜鸟引入fs模块varfsrequire(fs);// 异步读取fs.readFile(input.txt,function(err,data){if(err){returnconsole.error(err);}console.log(异步读取: data.toString());});// 同步读取vardatafs.readFileSync(input.txt);console.log(同步读取: data.toString());异步打开文件fs.open(path,flags[,mode],callback)参数参数使用说明如下path - 文件的路径。flags - 文件打开的行为。具体值详见下文。mode - 设置文件模式(权限)文件创建默认权限为 0666(可读可写)。callback - 回调函数带有两个参数如callback(err, fd)。flags 参数可以是以下值Flag描述r以读取模式打开文件。如果文件不存在抛出异常。r以读写模式打开文件。如果文件不存在抛出异常。rs以同步的方式读取文件。rs以同步的方式读取和写入文件。w以写入模式打开文件如果文件不存在则创建。wx类似 ‘w’但是如果文件路径存在则文件写入失败。w以读写模式打开文件如果文件不存在则创建。wx类似 ‘w’ 但是如果文件路径存在则文件读写失败。a以追加模式打开文件如果文件不存在则创建。ax类似 ‘a’ 但是如果文件路径存在则文件追加失败。a以读取追加模式打开文件如果文件不存在则创建。ax类似 ‘a’ 但是如果文件路径存在则文件读取追加失败。获取文件信息语法以下为通过异步模式获取文件信息的语法格式fs.stat(path,callback)参数参数使用说明如下path - 文件路径。callback - 回调函数带有两个参数如(err, stats), stats 是 fs.Stats 对象。fs.stat(path)执行后会将stats类的实例返回给其回调函数。可以通过stats类中的提供方法判断文件的相关属性。例如判断是否为文件stats类中的方法有方法描述stats.isFile()如果是文件返回 true否则返回 false。stats.isDirectory()如果是目录返回 true否则返回 false。stats.isBlockDevice()如果是块设备返回 true否则返回 false。stats.isCharacterDevice()如果是字符设备返回 true否则返回 false。stats.isSymbolicLink()如果是软链接返回 true否则返回 false。stats.isFIFO()如果是FIFO返回true否则返回 false。FIFO是UNIX中的一种特殊类型的命令管道。stats.isSocket()如果是 Socket 返回 true否则返回 false。写入文件语法以下为异步模式下写入文件的语法格式fs.writeFile(file,data[,options],callback)writeFile 直接打开文件默认是 w 模式所以如果文件存在该方法写入的内容会覆盖旧的文件内容。参数参数使用说明如下file - 文件名或文件描述符。data - 要写入文件的数据可以是 String(字符串) 或 Buffer(缓冲) 对象。options - 该参数是一个对象包含 {encoding, mode, flag}。默认编码为 utf8, 模式为 0666 flag 为 ‘w’callback - 回调函数回调函数只包含错误信息参数(err)在写入失败时返回。读取文件语法以下为异步模式下读取文件的语法格式fs.read(fd,buffer,offset,length,position,callback)该方法使用了文件描述符来读取文件。参数参数使用说明如下fd - 通过 fs.open() 方法返回的文件描述符。buffer - 数据写入的缓冲区。offset - 缓冲区写入的写入偏移量。length - 要从文件中读取的字节数。position - 文件读取的起始位置如果 position 的值为 null则会从当前文件指针的位置读取。callback - 回调函数有三个参数err, bytesRead, buffererr 为错误信息 bytesRead 表示读取的字节数buffer 为缓冲区对象关闭文件语法以下为异步模式下关闭文件的语法格式fs.close(fd,callback)参数参数使用说明如下fd - 通过 fs.open() 方法返回的文件描述符。callback - 回调函数没有参数。截取文件语法以下为异步模式下截取文件的语法格式fs.ftruncate(fd,len,callback)该方法使用了文件描述符来读取文件。参数参数使用说明如下fd - 通过 fs.open() 方法返回的文件描述符。len - 文件内容截取的长度。callback - 回调函数没有参数。删除文件语法以下为删除文件的语法格式fs.unlink(path,callback)参数参数使用说明如下path - 文件路径。callback - 回调函数没有参数。创建目录语法以下为创建目录的语法格式fs.mkdir(path[,options],callback)参数参数使用说明如下path - 文件路径。options 参数可以是recursive - 是否以递归的方式创建目录默认为 false。mode - 设置目录权限默认为 0777。callback - 回调函数没有参数。读取目录语法以下为读取目录的语法格式fs.readdir(path,callback)参数参数使用说明如下path - 文件路径。callback - 回调函数回调函数带有两个参数err, fileserr 为错误信息files 为 目录下的文件数组列表。删除目录语法以下为删除目录的语法格式fs.rmdir(path,callback)参数参数使用说明如下path - 文件路径。callback - 回调函数没有参数。文件模块方法参考手册以下为 Node.js 文件模块相同的方法列表序号方法 描述1fs.rename(oldPath, newPath, callback)异步 rename().回调函数没有参数但可能抛出异常。2fs.ftruncate(fd, len, callback)异步 ftruncate().回调函数没有参数但可能抛出异常。3fs.ftruncateSync(fd, len) 同步 ftruncate()4fs.truncate(path, len, callback)异步 truncate().回调函数没有参数但可能抛出异常。5fs.truncateSync(path, len)同步 truncate()6fs.chown(path, uid, gid, callback)异步 chown().回调函数没有参数但可能抛出异常。7fs.chownSync(path, uid, gid)同步 chown()8fs.fchown(fd, uid, gid, callback)异步 fchown().回调函数没有参数但可能抛出异常。9fs.fchownSync(fd, uid, gid)同步 fchown()10fs.lchown(path, uid, gid, callback)异步 lchown().回调函数没有参数但可能抛出异常。11fs.lchownSync(path, uid, gid)同步 lchown()12fs.chmod(path, mode, callback)异步 chmod().回调函数没有参数但可能抛出异常。13fs.chmodSync(path, mode)同步 chmod().14fs.fchmod(fd, mode, callback)异步 fchmod().回调函数没有参数但可能抛出异常。15fs.fchmodSync(fd, mode)同步 fchmod().16fs.lchmod(path, mode, callback)异步 lchmod().回调函数没有参数但可能抛出异常。Only available on Mac OS X.17fs.lchmodSync(path, mode)同步 lchmod().18fs.stat(path, callback)异步 stat(). 回调函数有两个参数 err, statsstats 是 fs.Stats 对象。19fs.lstat(path, callback)异步 lstat(). 回调函数有两个参数 err, statsstats 是 fs.Stats 对象。20fs.fstat(fd, callback)异步 fstat(). 回调函数有两个参数 err, statsstats 是 fs.Stats 对象。21fs.statSync(path)同步 stat(). 返回 fs.Stats 的实例。22fs.lstatSync(path)同步 lstat(). 返回 fs.Stats 的实例。23fs.fstatSync(fd)同步 fstat(). 返回 fs.Stats 的实例。24fs.link(srcpath, dstpath, callback)异步 link().回调函数没有参数但可能抛出异常。25fs.linkSync(srcpath, dstpath)同步 link().26fs.symlink(srcpath, dstpath[, type], callback)异步 symlink().回调函数没有参数但可能抛出异常。 type 参数可以设置为 ‘dir’, ‘file’, 或 ‘junction’ (默认为 ‘file’) 。27fs.symlinkSync(srcpath, dstpath[, type])同步 symlink().28fs.readlink(path, callback)异步 readlink(). 回调函数有两个参数 err, linkString。29fs.realpath(path[, cache], callback)异步 realpath(). 回调函数有两个参数 err, resolvedPath。30fs.realpathSync(path[, cache])同步 realpath()。返回绝对路径。31fs.unlink(path, callback)异步 unlink().回调函数没有参数但可能抛出异常。32fs.unlinkSync(path)同步 unlink().33fs.rmdir(path, callback)异步 rmdir().回调函数没有参数但可能抛出异常。34fs.rmdirSync(path)同步 rmdir().35fs.mkdir(path[, mode], callback)36fs.mkdirSync(path[, mode])同步 mkdir().37fs.readdir(path, callback)异步 readdir(3). 读取目录的内容。38fs.readdirSync(path)同步 readdir().返回文件数组列表。39fs.close(fd, callback)异步 close().回调函数没有参数但可能抛出异常。40fs.closeSync(fd)同步 close().41fs.open(path, flags[, mode], callback)异步打开文件。42fs.openSync(path, flags[, mode])同步 version of fs.open().43fs.utimes(path, atime, mtime, callback)44fs.utimesSync(path, atime, mtime)修改文件时间戳文件通过指定的文件路径。45fs.futimes(fd, atime, mtime, callback)46fs.futimesSync(fd, atime, mtime)修改文件时间戳通过文件描述符指定。47fs.fsync(fd, callback)异步 fsync.回调函数没有参数但可能抛出异常。48fs.fsyncSync(fd)同步 fsync.49fs.write(fd, buffer, offset, length[, position], callback)将缓冲区内容写入到通过文件描述符指定的文件。50fs.write(fd, data[, position[, encoding]], callback)通过文件描述符 fd 写入文件内容。51fs.writeSync(fd, buffer, offset, length[, position])同步版的 fs.write()。52fs.writeSync(fd, data[, position[, encoding]])同步版的 fs.write().53fs.read(fd, buffer, offset, length, position, callback)通过文件描述符 fd 读取文件内容。54fs.readSync(fd, buffer, offset, length, position)同步版的 fs.read.55fs.readFile(filename[, options], callback)异步读取文件内容。56fs.readFileSync(filename[, options])57fs.writeFile(filename, data[, options], callback)异步写入文件内容。58fs.writeFileSync(filename, data[, options])同步版的 fs.writeFile。59fs.appendFile(filename, data[, options], callback)异步追加文件内容。60fs.appendFileSync(filename, data[, options])The 同步 version of fs.appendFile.61fs.watchFile(filename[, options], listener)查看文件的修改。62fs.unwatchFile(filename[, listener])停止查看 filename 的修改。63fs.watch(filename[, options][, listener])查看 filename 的修改filename 可以是文件或目录。返回 fs.FSWatcher 对象。64fs.exists(path, callback)检测给定的路径是否存在。65fs.existsSync(path)同步版的 fs.exists.66fs.access(path[, mode], callback)测试指定路径用户权限。67fs.accessSync(path[, mode])同步版的 fs.access。68fs.createReadStream(path[, options])返回ReadStream 对象。69fs.createWriteStream(path[, options])返回 WriteStream 对象。70fs.symlink(srcpath, dstpath[, type], callback)异步 symlink().回调函数没有参数但可能抛出异常。

相关新闻

AI与大模型新闻日报 | 2026-07-28

AI与大模型新闻日报 | 2026-07-28

AI与大模型新闻日报20260728大模型技术共 11 条新闻1. 超维动力携手北大医疗:务实构建具身智能医疗落地路径来源: 量子位时间: 2026-07-27 09:55摘要: 一次技术与场景的深度耦合2. 上海青浦与华为共建,长三角 AI 联合创新中心正式启用来源: IT 之家时间:…

2026/9/23 21:29:40 阅读更多 →
GO_网络编程---HTTP 编程

GO_网络编程---HTTP 编程

一、HTTP 基础前置知识1. 网页访问完整流程用户输入域名,域名发送至DNS 服务器,DNS 解析返回对应服务器 IP 地址;客户端通过拿到的 IP 地址,向 Web 服务器发起 TCP 连接;客户端发送HTTP 请求包给服务端;Web…

2026/9/24 0:16:31 阅读更多 →
树莓派驱动6屏Cyberdeck:多屏扩展、3D打印外壳与系统配置全攻略

树莓派驱动6屏Cyberdeck:多屏扩展、3D打印外壳与系统配置全攻略

1. 项目概述:当树莓派遇上“赛博甲板”如果你和我一样,是个对复古未来主义科技和DIY硬件着迷的人,那么“Cyberdeck”这个词一定不会陌生。它源自赛博朋克文化,描绘的是一种高度个性化、模块化、甚至有点粗犷的便携式计算终端。最近…

2026/9/23 14:19:45 阅读更多 →

最新新闻

Word内容粘贴到富文本编辑器样式丢失?一套清洗管线方案彻底解决

Word内容粘贴到富文本编辑器样式丢失?一套清洗管线方案彻底解决

1. 问题根源:为什么Word内容一进浏览器就“变脸”做前端的人,尤其是跟CMS后台、富文本编辑器、协同文档打过交道的,基本都遇到过一个让人抓狂的场景:客户或者运营同事在Word里排版排得漂漂亮亮,标题带色、段落缩进、表…

2026/9/24 20:30:47 阅读更多 →
JavaWeb仓库管理系统:Layui+Layer+Laydate实战

JavaWeb仓库管理系统:Layui+Layer+Laydate实战

简介:这是一套面向JavaWeb初学者与信息系统课程设计者的完整仓库管理系统实战项目,聚焦企业库存管理核心场景,融合传统Web开发与基础AI应用理念。资源包含13个功能模块的可运行代码及配套文档,覆盖登录注册、商品/库存/出入库/订单…

2026/9/24 20:30:47 阅读更多 →
Python电影数据集探索实战:从清洗到可视化全流程

Python电影数据集探索实战:从清洗到可视化全流程

简介:一份基于Python的电影数据分析项目包,面向正在完成课程设计、期末大作业或毕设的计算机、人工智能、大数据、数学、电子信息等相关专业学生,也适合刚入门数据分析的开发者参考。包内共3个文件:一个Python脚本用于完整执行分析…

2026/9/24 20:30:47 阅读更多 →
V100 16GB跑通Qwen 27B:推理速度从4.2到63.8 tok/s的优化实录

V100 16GB跑通Qwen 27B:推理速度从4.2到63.8 tok/s的优化实录

几个月前,我从仓库角落翻出一台配着 Tesla V100 16GB 的老服务器时,同事的第一反应是:这卡还能跑 Qwen 27B 大模型?说实话我自己也没底。Qwen 27B 的 FP16 权重就有 54GB,一块 16GB 显存的 V100 连一半都装不进去&…

2026/9/24 20:30:47 阅读更多 →
5分钟打造你的专属AI助手:Strands Agents零基础入门指南

5分钟打造你的专属AI助手:Strands Agents零基础入门指南

5分钟打造你的专属AI助手:Strands Agents零基础入门指南 【免费下载链接】harness-sdk Build an agent harness and control it end-to-end. Open-source SDK for production AI agents in Python & TypeScript - any model, any cloud. 项目地址: https://gi…

2026/9/24 20:30:47 阅读更多 →
离线知识服务器搭建实战:Kiwix+Ollama实现断网AI问答

离线知识服务器搭建实战:Kiwix+Ollama实现断网AI问答

说实话,这个项目是我被网络逼出来的。去年去一个偏远项目现场,网络差到连搜索都打不开,临时要查一个设备说明,翻遍手机缓存也没找到,最后只能打电话回去让人查了再念给我听。那种憋屈感让我下了一个决心——搞一台完全…

2026/9/24 20:29:46 阅读更多 →

日新闻

基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程

基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程

简介:这是一套面向计算机、人工智能、自动化等专业学生与教师的毕业设计级项目资源,围绕YOLOv8实现渔船作业监控系统,可用于毕设、课程设计、大作业或项目立项演示。压缩包共97个文件,约24.21MB,以70个Python源码文件为…

2026/9/24 0:00:19 阅读更多 →
单细胞注释实战:基于Scanpy的标记基因与参考映射流程解析

单细胞注释实战:基于Scanpy的标记基因与参考映射流程解析

简介:一份基于单细胞RNA测序数据的细胞类型注释算法研究Python毕业设计源码,针对计算机相关专业正在做毕设或需要项目实战的学习者,可用于课程设计与期末大作业。项目代码完整、经导师指导评审通过,可直接运行,覆盖数据…

2026/9/24 0:00:19 阅读更多 →
C#源生成器实战:用增量生成器替代反射,告别AOT崩溃

C#源生成器实战:用增量生成器替代反射,告别AOT崩溃

第一次在项目里被反射卡住,是在一个老旧的WinForms模块里:几十个类依赖PropertyChanged通知,运行时反射读属性、发通知,每次启动慢半拍不说,一上.NET Native/AOT裁剪模式几乎全面崩盘。后来我把这段逻辑全部改成C#源生…

2026/9/24 0:00:19 阅读更多 →

周新闻

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

直接铺开项目本身吧。这几个月我一直在折腾一件事:用Flutter给OpenHarmony做一款游戏集合类的App,说白了就是把若干小游戏塞进一个壳里,用统一入口分发。这个方向本身不算新鲜,真正让我花了不少心思的,是首页那堆游戏卡…

2026/9/24 14:34:13 阅读更多 →
Word表格编号全攻略:从列表编号到题注交叉引用

Word表格编号全攻略:从列表编号到题注交叉引用

写Word文档,最让人头疼的往往是那些“看起来不起眼”的小问题。比如表格编号这事:今天在表后面多加了两个空白行,明天给客户交稿前发现整个章节的编号全部错位,光是挨个改序号就能耗掉大半个下午。我前阵子帮人整理一份上百页的技…

2026/9/24 9:10:42 阅读更多 →
从第一个站到第二个站:独立开发者的静态网站选型与落地实践

从第一个站到第二个站:独立开发者的静态网站选型与落地实践

1. 项目概述1.1 核心需求解析做独立开发者这几年,说实话,第一个网站上线的那天晚上我兴奋得没睡着。但等它跑了半年,流量惨淡、功能臃肿、代码自己都懒得看第二遍之后,我才慢慢琢磨明白一个道理:第一个网站是练手&…

2026/9/24 14:33:56 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/24 12:50:34 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/24 14:33:48 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/24 12:49:17 阅读更多 →