fs文件系统模块对于系统文件及目录进行一些读写操作。

模块中的方法均有异步和同步版本,例如读取文件内容的函数有异步的 fs.readFile() 和同步的 fs.readFileSync()

异步的方法函数最后一个参数为回调函数,回调函数的第一个参数包含了错误信息(error)。

建议大家使用异步方法,比起同步,异步方法性能更高,速度更快,而且没有阻塞。

创建文件

fs.writeFile(filename ,data,[options],function(err){})

如果文件存在,写入的内容会覆盖旧文件内容

filename      (String)            文件名称
data (String | Buffer) 将要写入的内容,可以使字符串 或 buffer数据。
options (Object) option数组对象,包含
callback {Function} 回调,传递一个异常参数err。

追加文件

fs.appendFile(path,data,[options],function(err){})

name : 文件名
str : 添加的字段
encode : 设置编码
callback : 回调函数 ,传递一个异常参数err

读取文件

fs.readFile(path,options,function(err,data){}) 

filename 具体的文件保存路径地址
[options] 具体选项配置,包括数据的编码方式,
callback为具体的回调函数,进行相应的错误捕捉及提示。

文件是否存在

fs.exists(path, function(exists){})

path 欲检测的文件路径
callback 回调

注意此回调的参数和其他 Node.js 回调的参数不一致。不推荐在调用 fs.open,fs.readFile(),fs.writeFile() 之前使用 fs.exists()检测文件是否存在。这样做会引起竞争条件,因为在两次调用之间,其他进程可能修改文件。作为替代,用户应该直接开/读取/写入文件,当文件不存在时再处理错误。

删除文件

fs.unlink(path,function(err){})

path - 文件路径
callback - 回调函数,err

创建文件夹

fs.mkdir(name,function(err){})

path - 文件路径。
callback - 回调函数,err,异步地创建目录。 完成回调只有一个可能的异常参数。

删除文件夹

fs.rmdir(path,function(err){})

path - 文件路径。
callback - 回调函数,没有参数。

读取文件夹

fs.readdir(path,function(err,files){})

path - 文件路径。
callback - 回调函数,回调函数带有两个参数err, files,err 为错误信息,files 为 目录下的文件数组列表

改名字

fs.rename(oldname,newname,function(err){})

修改文件名称,可更改文件的存放路径。

原文地址:https://segmentfault.com/a/1190000017081655

最新文章

  1. CozyRSS开发记录2-酷炫的皮肤库
  2. spring html特殊字符操作
  3. Searching a 2D Sorted Matrix Part I
  4. 汉企C#面向对象——继承
  5. Unity3d webplayer发布的问题和100%自适应浏览器
  6. python list 按长度分段
  7. {网络编程}和{多线程}应用:基于TCP协议【实现多个客户端发送文件给一个服务器端】--练习
  8. 【详细资料】ICN6211:MIPI DSI转RGB芯片简介
  9. 织梦CMS首页调用分类信息栏目及列表方法
  10. 关于define和const
  11. ContextLoaderListener加载过程
  12. centos7下NFS使用与配置
  13. webstorm设置VCS:版本控制顶部按钮
  14. SQL Server数据恢复准备之TRUNCATE TABLE理解
  15. angular五种服务详解
  16. AttrContext
  17. 【LG4841】城市规划
  18. Android源代码目录结构(转)
  19. Inventory Update
  20. Centos7修改主机名称、DNS、网卡信息

热门文章

  1. Tomcat日志文件的输出在Linux和Windows下的差异
  2. js+canvas(H5)实现小球移动小demo
  3. ShareSDK集成遇到问题
  4. [题解]luogu_AT1224_JOIOJI
  5. chrome浏览器历史版本
  6. vue 中的router 配置问题 导致的内存溢出~~~
  7. Mysql 事务隔离级别(图文详解)
  8. Crusher Django 学习笔记3 学习使用模板系统
  9. 排序算法(C语言+Python版)宝宝再也不怕面试官写排序算法了
  10. 灰度共生矩阵GLCM分析