NodeJs 文件系统操作模块fs使用方法详解


Posted in NodeJs onNovember 26, 2018

NodeJs:文件读取API使用方法 - - readFile()

  1. 需求:使用Node中提供的文件操作API,读取files目录下的1.txt 文档中文本内容。
  2. Node的三个组成部分:ECMAScript核心 + 全局成员 + 核心API成员
  3. 核心API成员,在大家安装Node应用程序的时候,就已经安装到了自己的电脑中。
  4. 如果想要访问核心成员,直接使用require(“核心成员的名称”),就能够导入并使用这些核心成员。

const fs = require(“fs”);

fs.核心模块中,提供了一个 fs.readFile方法,来读取指定目录下的文件

fs.readFile(); 有三个参数

  1. 参数1:表示要读取的文件的路径
  2. 参数2:表示要以什么样的编码格式,来读取指定的文件,默认编码格式为null。
  3. 参数3:表示当文件读取完成,调用这个callback回调函数来处理读取的结果。
  4. 第一个参数,是error对象,第二个参数,才是读取成功的结果。
fs.readFile(“./files/1.txt”,function(err,data){
console.log(err); // null 如果err 为null 就证明读取成功了,没有出错
console.log(data); // <Buffer > 读取的内容数据
})

读取文件完整代码演示:

NodeJs 文件系统操作模块fs使用方法详解

NodeJs:文件写入API使用方法 - - writeFile()需求:调用fs.writeFile方法,向files目录中,写入一个2.txt文档。

导入fs 文件操作模块

const fs = require(“fs”);

  1. 调用fs.writeFile写入文件
  2. 参数1:路径字符串,表示要把文件内容写入到那个文件中
  3. 参数2:要写入的数据,可以指定一个字符串
  4. 参数3:可选参数,表示要以什么格式写入文件内容,默认以utf-8格式写入文件(一般默认不传递第三个参数)
  5. 参数4:文件写入完成之后的callback回调函数

/*注释*/ : 在回调函数中,只有一个形参,err返回错误对象

写入文件完整代码演示:

NodeJs 文件系统操作模块fs使用方法详解

NodeJs:文件追加API使用方法 - - appendFile()导入 fs 文件操作模块

const fs = require(“fs”);

调用fs.appendFile 追加文件内容

  1. 参数1:表示要向哪个文件中追加内容,指定一个文件的路径
  2. 参数2:表示要追加的具体的内容,可以传递字符串内容
  3. 可选参数:表示追加文本内容时候的编码格式,如果省略此参数。默认以utf8的格式追加内容
  4. 参数4:表示追加完成之后的回调

/*注释*/ :有形参err,追加失败之后的错误结果

追加文件完整代码演示:

NodeJs 文件系统操作模块fs使用方法详解

fs模块相对路径的问题:

使用fs模块操作文件的时候,如果提供的操作路径是相对路径,则会根据当前执行node命令时的磁盘目录,去拼接提供的文件的相对路径,从而容易出现问题;

例如:

NodeJs 文件系统操作模块fs使用方法详解

出现以下错误:

NodeJs 文件系统操作模块fs使用方法详解

Ps:上述图片内容中代码的路径请根据自身文件目录路径为主。

解决方案:

注意:在node中_ _dirname 表示当前这个文件,所处的磁盘目录

_ _filename 表示当前这个文件的完整路径,路径中包含了具体的文件名

代码演示:

NodeJs 文件系统操作模块fs使用方法详解

结论:今后,只要在使用fs 模块操作文件的时候,而且这个方法需要提供一个文件的操作路径,这时候大家一定要使用_ _dirname 去拼接路径。

NodeJs:读取文件信息 - - fs.stat()

1.引入fs模块

NodeJs 文件系统操作模块fs使用方法详解

2.Fs.stat() 方法使用

NodeJs 文件系统操作模块fs使用方法详解

Ps:上述代码终端打印日志:

NodeJs 文件系统操作模块fs使用方法详解

NodeJs:复制文件 - - fs.copyFile()

1.引入fs模块

NodeJs 文件系统操作模块fs使用方法详解

2.copyFile();方式使用

NodeJs 文件系统操作模块fs使用方法详解

总结

以上所述是小编给大家介绍的NodeJs 文件系统操作模块fs使用方法详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

NodeJs 相关文章推荐
nodejs事件的监听与触发的理解分析
Feb 12 NodeJs
nodejs中的fiber(纤程)库详解
Mar 24 NodeJs
浅谈Nodejs中的作用域问题
Dec 26 NodeJs
nodejs实例解析(输出hello world)
Jan 03 NodeJs
详解nodejs操作mongodb数据库封装DB类
Apr 10 NodeJs
NodeJS设计模式总结【单例模式,适配器模式,装饰模式,观察者模式】
Sep 06 NodeJs
Nodejs实现文件上传的示例代码
Sep 26 NodeJs
详解Nodejs mongoose
Jun 10 NodeJs
基于Nodejs的Tcp封包和解包的理解
Sep 19 NodeJs
nodejs搭建本地服务器并访问文件操作示例
May 11 NodeJs
NodeJS读取分析Nginx错误日志的方法
May 14 NodeJs
Sublime Text3 配置 NodeJs 环境的方法
May 20 NodeJs
详解从NodeJS搭建中间层再谈前后端分离
Nov 13 #NodeJs
手把手教你如何使用nodejs编写cli命令行
Nov 05 #NodeJs
基于nodejs的雪碧图制作工具的示例代码
Nov 05 #NodeJs
nodejs遍历文件夹下并操作HTML/CSS/JS/PNG/JPG的方法
Nov 01 #NodeJs
nodejs中函数的调用实例详解
Oct 31 #NodeJs
NodeJS 将文件夹按照存放路径变成一个对应的JSON的方法
Oct 17 #NodeJs
Nodejs实现多文件夹文件同步
Oct 17 #NodeJs
You might like
探讨GDFONTPATH能否被winxp下的php支持
2013/06/21 PHP
实现PHP搜索加分页
2016/10/12 PHP
PHP PDO数据库操作预处理与注意事项
2019/03/16 PHP
Yii框架函数简单用法分析
2019/09/09 PHP
PHP程序员简单的开展服务治理架构操作详解(一)
2020/05/14 PHP
JavaScript QueryString解析类代码
2010/01/17 Javascript
基于jQuery架构javascript基础体系
2011/01/01 Javascript
实用的Jquery选项卡TAB示例代码
2013/08/28 Javascript
在子窗口中关闭父窗口的一句代码
2013/10/21 Javascript
javascript获取当前的时间戳的方法汇总
2015/07/26 Javascript
JavaScript实现页面跳转的几种常用方式
2015/11/28 Javascript
JavaScript如何实现在文本框(密码框)输入提示语
2015/12/25 Javascript
js+css简单实现网页换肤效果
2015/12/29 Javascript
Bootstrap3制作自己的导航栏
2016/05/12 Javascript
微信小程序 Tab页切换更新数据
2017/01/05 Javascript
webpack实现热加载自动刷新的方法
2017/07/30 Javascript
react高阶组件经典应用之权限控制详解
2017/09/07 Javascript
jQuery ajax读取本地json文件的实例
2017/10/31 jQuery
React中使用UMEditor的方法示例
2019/12/27 Javascript
JS array数组检测方式解析
2020/05/19 Javascript
python self,cls,decorator的理解
2009/07/13 Python
Python减少循环层次和缩进的技巧分析
2016/03/15 Python
Python自动生产表情包
2017/03/17 Python
python批量设置多个Excel文件页眉页脚的脚本
2018/03/14 Python
详解python多线程之间的同步(一)
2019/04/03 Python
python实现字符串完美拆分split()的方法
2019/07/16 Python
Pandas实现一列数据分隔为两列
2020/05/18 Python
Python通过文本和图片生成词云图
2020/05/21 Python
实例讲解CSS3中的box-flex弹性盒属性布局
2016/06/09 HTML / CSS
Linux如何压缩可执行文件
2014/03/27 面试题
企业内控岗位的职责
2014/02/07 职场文书
家长对孩子的评语
2014/04/18 职场文书
培训协议书范本
2014/04/22 职场文书
2015年法律事务部工作总结
2015/07/27 职场文书
高一军训感想
2015/08/07 职场文书
详解vue身份认证管理和租户管理
2021/05/25 Vue.js