nodejs fs 模块

件系统操作相关的函数挺多的。首先可以分为两大类。

一类是异步+回调的。 一类是同步的。

在这里只对异步的进行整理,同步的只需要在函数名称后面加上Sync即可

1. 首先是一类最常规的读写函数,函数名称和形式,应该是起源于C语言的。

代码如下:

fs.open(文件路径,读写标识,[文件mode值,666],回调函数(err,文件句柄fd));          
fs.read(文件句柄fd,被写入的buffer,offset,length,position,回调函数(err, bytesRead, buffer));          
fs.write(文件句柄fd,被读取的buffer,offset,length,position,回调函数(err,bytesWritten,buffer));          
fs.close(文件句柄,回调函数)          
fs.truncate(文件句柄,截断长度,回调函数);          
fs.fsync(文件句柄,回调函数);

2. 直接对文件进行读写的,用起来比较方便。

代码如下:

fs.readFile(文件名,编码,回调函数(err,data));       
fs.writeFile(文件名,数据,编码,回调函数(err));       
fs.appendFile(文件名,数据,编码,回调函数(err));

3. 其它常用文件操作


代码如下:

判断文件是否存在      
fs.exists(文件路径,callback(是否存在));      
重命名      
fs.rename(旧文件名,新文件名,回调函数);      
文件所有者变更      
fs.chown(文件名,uid,gid,回调函数);/fs.fchown(文件句柄fd,uid,gid,回调函数);/fs.lchown(链接路径,uid,gid,回调函数);      
文件权限变更      
fs.chmod(文件名,mode,回调函数);/fs.fchmod(文件句柄,mode,回调函数);/fs.lchmod(链接路径,mode,回调函数);      
文件信息      
fs.stat(文件路径,回调函数(err.fs.Stats对象));/fs.fstat(文件句柄fd,回调函数(err.fs.Stats对象));/fs.lstat(链接路径,回调函数(err.fs.Stats对象));      
文件时间      
fs.utimes(文件路径,访问时间,新建时间,回调函数);/fs.futimes(文件句柄,访问时间,新建时间,回调函数);      
监视文件      
fs.watchFile(文件名,[options],listener_callback(当前文件的stats,改变前的stats));      
fs.unwatchFile(文件名);

4. 目录操作

代码如下:

fs.mkdir(路径,权限mode/777,回调函数);    
fs.rmdir(路径,回调函数);    
fs.readdir(路径,回调函数(err,fileNameArray));

5. 链接文件操作

代码如下:

创建一个链接   
fs.link(srcpath, dstpath, [callback])   
fs.symlink(destination, path, [type], [callback])  

读取链接指向的路径   
fs.readlink(path, [callback(err,linkstr)])   
fs.unlink(path,[callback]);

时间: 2024-08-04 06:26:03

nodejs fs 模块的相关文章

nodejs - fs模块 - 文件操作

1, fs.stat  检测是文件还是目录 2, fs.mkdir 创建目录 var fs = require('fs') fs.mkdir('./dir',function(err){ if(err){ console.log(err) return false } console.log('mkdir has been complete') }) 3, fs.writeFile 创建写入文件 如果文件不存在会自动创建文件, 存在则覆盖. var fs = require('fs') fs.w

nodejs学习笔记一( sublime、atom开发环境,http模块,fs模块的初识)

http服务 let server = http.createServer(function(req,res){ }); 监听: server.listen(8080); request       请求 response     相应 编辑器配置相应的环境 sublime: 依次打开  Tools --> Build System --> new Build System 中文:工具 --> 编译系统 --> 新建编译系统 输入以下代码,保存配置文件,然后 使用快捷键 Ctrl

nodejs入门API之fs模块

fs模块下的类与FS常量 fs模块下的主要方法 fs的Promise API与FileHandle类 一.fs模块下的类 1.1 fs.Dir:表示目录流的类,由 fs.opendir().fs.opendirSync() 或 fsPromises.opendir() 创建. 1.2 fs.Dirent:目录项的表现形式,通过从fs.Dir中读取返回. 1.3 fs.FSWatcher:继承自 <EventEmitter>,调用 fs.watch() 方法返回该对象.每当指定监视的文件被修改时

Nodejs mkdirP 模块导致CPU占用高的问题

Nodejs mkdirP 模块导致CPU占用高的问题 近期将nodejs项目部署到服务器上并启动时,发现node进程的cpu占用率在40%左右,当时表示非常不解,刚启动的服务并没有运行什么需要大量消耗cpu的逻辑,且此时还未有请求发送到服务器端. 鉴于这种情况,只能猜测是某段程序在初始化一些东西的时候异常,所以才导致了这种情况. 经过对代码的排查后,最终锁定出为题的代码块如下: router.use(multer({ dest: config.uploadDir, limits:{ fileS

nodejs cheerio模块提取html页面内容

nodejs cheerio模块提取html页面内容 Table of Contents 1. nodejs cheerio模块提取html页面内容 1.1. 找到目标元素 1.2. 美化文本输出 1.3. 提取答案文本 1.4. 最终代码 本文给出使用一个用cheerio模块提取html文件中指定内容的例子,并说明具体步骤.涉及到的API.以及其它模块. cheerio模块是一个类似jquery的模块,具有相似的API.功能,能够将一个网页解析为DOM,以及通过selector选择元素,设置.

NodeJS http 模块

#4 NodeJS http 模块 工作目录 server.js var http = require('http'); var fs = require('fs'); var path = require('path'); var mime = require('mime'); function send404(response){      response.writeHead(404,{           'Content-Type':'text/plain'      });     

nodejs的模块系统(实例分析exprots和module.exprots)

前言:工欲善其事,必先利其器.模块系统是nodejs组织管理代码的利器也是调用第三方代码的途径,本文将详细讲解nodejs的模块系统.在文章最后实例分析一下exprots和module.exprots. nodejs的模块 什么是模块? node.js通过实现CommonJS的Modules/1.0标准引入了模块(module)概念,模块是Node.js的基本组成部分.一个node.js文件就是一个模块,也就是说文件和模块是一一对应的关系.这个文件可以是JavaScript代码,JSON或者编译

Nodejs的模块

在Node中引入模块,需要经历如下3个步骤:(1)路径分析(2)文件定位(3)编译执行 Node中模块分为两类: 一是Node提供的模块——核心模块.这部分在Node源代码的编译过程中,编译进了二进制文件.在Node进程启动时,部分核心模块就直接加载进内存中,所以这部分核心模块引入时,省略掉文件定位和编译执行并且在路径分析中优先判断,加载速度是是最快的. 二是用户编写的模块——文件模块.在运行时动态加载,需要完整的路径分析.文件定位.编译执行过程,速度比核心模块慢. 1.优先从缓存加载 Node

Nodejs核心模块

全局对象 Nodejs中全局对象是 global(作为全局变量的宿主),所有全局变量都是global对象的属性,在Nodejs中能够直接访问到的对象通常都是global的属性,如 console,process等. 在最外层定义的变量 全局对象的属性: 隐式定义的变量(未定义直接赋值的变量) 当定义一个全局变量时,这个变量同时也会成为全局对象的属性. 注意:永远使用var定义变量,以避免引入全局变量,因为全局变量会污染命名空间,提高代码耦合的风险. 1.1.process process.arg