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中的非阻塞方法介绍
Jun 05 NodeJs
nodeJS删除文件方法示例
Dec 25 NodeJs
NodeJS仿WebApi路由示例
Feb 28 NodeJs
angular2+nodejs实现图片上传功能
Mar 27 NodeJs
nodejs个人博客开发第四步 数据模型
Apr 12 NodeJs
nodejs模块学习之connect解析
Jul 05 NodeJs
nodejs构建本地web测试服务器 如何解决访问静态资源问题
Jul 14 NodeJs
Windows下使用Nodejs运行js的方法
Sep 02 NodeJs
nodejs创建简易web服务器与文件读写的实例
Sep 07 NodeJs
使用nodeJS中的fs模块对文件及目录进行读写,删除,追加,等操作详解
Feb 06 NodeJs
Nodejs 数组的队列以及forEach的应用详解
Feb 25 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
杏林同学录(五)
2006/10/09 PHP
php使用ob_start()实现图片存入变量的方法
2014/11/14 PHP
PHP数学运算与数据处理实例分析
2016/04/01 PHP
jquery 插件学习(六)
2012/08/06 Javascript
javascript实现手机震动API代码
2015/08/05 Javascript
表单验证正则表达式实例代码详解
2015/11/09 Javascript
javascript常见数字进制转换实例分析
2016/04/21 Javascript
使用Promise解决多层异步调用的简单学习心得
2016/05/17 Javascript
js实现仿购物车加减效果
2017/03/01 Javascript
jQuery插件echarts实现的多柱子柱状图效果示例【附demo源码下载】
2017/03/04 Javascript
原生js获取left值和top值的三种方法
2017/08/02 Javascript
jquery自定义显示消息数量
2017/12/19 jQuery
vue 2.0 购物车小球抛物线的示例代码
2018/02/01 Javascript
移动端 Vue+Vant 的Uploader 实现上传、压缩、旋转图片功能
2019/06/10 Javascript
javascript创建元素和删除元素实例小结
2019/06/19 Javascript
ES11新增的这9个新特性,你都掌握了吗
2020/10/15 Javascript
jQuery实现本地存储
2020/12/22 jQuery
[01:31:22]Ti4 循环赛第四日附加赛LGD vs Mouz
2014/07/13 DOTA
[51:39]DOTA2-DPC中国联赛 正赛 Magma vs LBZS BO3 第二场 2月7日
2021/03/11 DOTA
Python格式化css文件的方法
2015/03/10 Python
Python实现在线程里运行scrapy的方法
2015/04/07 Python
Python学习pygal绘制线图代码分享
2017/12/09 Python
用Python下载一个网页保存为本地的HTML文件实例
2018/05/21 Python
Python实现数据可视化看如何监控你的爬虫状态【推荐】
2018/08/10 Python
浅析python中的迭代与迭代对象
2018/10/08 Python
通过pykafka接收Kafka消息队列的方法
2018/12/27 Python
Django利用cookie保存用户登录信息的简单实现方法
2019/05/27 Python
Python文件操作中进行字符串替换的方法(保存到新文件/当前文件)
2019/06/28 Python
Python批量启动多线程代码实例
2020/02/18 Python
python 解决函数返回return的问题
2020/12/05 Python
TheFork葡萄牙:欧洲领先的在线餐厅预订平台
2019/05/27 全球购物
党员创先争优心得体会
2014/09/11 职场文书
企业务虚会发言材料
2014/10/20 职场文书
2015年世界水日活动总结
2015/02/09 职场文书
预防艾滋病宣传活动总结
2015/05/09 职场文书
毕业酒会致辞
2015/07/29 职场文书