Node.js读取文件内容示例


Posted in Javascript onMarch 07, 2017

Node.js读取文件内容包括同步和异步两种方式。

1、同步读取,调用的是readFileSync

var rf=require("fs"); 
var data=rf.readFileSync("test","utf-8"); 
console.log(data); 
console.log("READ FILE SYNC END");

输出结果,先内容,后end

Node.js读取文件内容示例

2、异步读取,调用readFile

var rf=require("fs"); 
rf.readFile("test",'utf-8',function(err,data){ 
  if(err){ 
    console.log("error"); 
  }else{ 
    console.log(data); 
  } 
}); 
console.log("READ FILE ASYNC END");

输入结果先end,后内容

Node.js读取文件内容示例

同步式读取文件的方式比较容易理解,将文件名作为参数传入 fs.readFileSync 函数,阻塞等待读取完成后,将文件的内容作为函数的返回值赋给 data 变量,接下来控制台输出 data 的值,最后输出 end。

异步式读取文件就稍微有些违反直觉了,end先被输出。要想理解结果,我们必须先知道在 Node.js 中,异步式 I/O 是通过回调函数来实现的。fs.readFile 接收了三个参数,第一个是文件名,第二个是编码方式,第三个是一个函数,我们称这个函数为回调函数。

JavaScript 支持匿名的函数定义方式, 譬如例子中回调函数的定义就是嵌套在fs.readFile 的参数表中的。
上面异步读取readFile中的参数回调函数可以拿出来。

var rf=require("fs"); 
function callBack(err,data){ 
  if(err){ 
    console.log("error"); 
  }else{ 
    console.log(data); 
  } 
} 
rf.readFile("test","utf-8",callBack); 
console.log("READ FILE ASYNC END");

fs.readFile 调用时所做的工作只是将异步式 I/O 请求发送给了操作系统,然后立即返回并执行后面的语句,执行完以后进入事件循环监听事件。当 fs 接收到 I/O 请求完成的事件时,事件循环会主动调用回调函数以完成后续工作。

整个项目文件路径如图所示。tes为要读取的文件。

Node.js读取文件内容示例

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
将jQuery应用于login页面的问题及解决
Oct 17 Javascript
js 强制弹出窗口代码研究-又一款代码
Mar 20 Javascript
ExtJS 下拉多选框lovcombo
May 19 Javascript
关于Javascript模块化和命名空间管理的问题说明
Dec 06 Javascript
jQuery写的日历(包括日历的样式及功能)
Apr 23 Javascript
jQuery输入城市查看地图使用介绍
May 08 Javascript
检查输入的是否是数字使用keyCode配合onkeypress事件
Jan 23 Javascript
Chrome下ifame父窗口调用子窗口的问题示例探讨
Mar 17 Javascript
jqGrid 学习笔记整理——进阶篇(一 )
Apr 17 Javascript
jQuery Mobile 触摸事件实例
Jun 04 Javascript
jQuery使用正则表达式替换dom元素标签用法示例
Jan 16 Javascript
浅谈AngularJs 双向绑定原理(数据绑定机制)
Dec 07 Javascript
JQuery查找子元素find()和遍历集合each的方法总结
Mar 07 #Javascript
AngularJS的Filter的示例详解
Mar 07 #Javascript
js上下视差滚动简单实现代码
Mar 07 #Javascript
js实现下一页页码效果
Mar 07 #Javascript
原生JS中slice()方法和splice()区别
Mar 06 #Javascript
浅析vue component 组件使用
Mar 06 #Javascript
js常用的继承--组合式继承
Mar 06 #Javascript
You might like
PHP-Java-Bridge使用笔记
2014/09/22 PHP
PHP制作3D扇形统计图以及对图片进行缩放操作实例
2014/10/23 PHP
PHP实现的简单分页类及用法示例
2016/05/06 PHP
PHP支付宝当面付2.0代码
2018/12/21 PHP
PHP的imageTtfText()函数深入详解
2021/03/03 PHP
在IE上直接编辑网页内容的js代码(IE地址栏js)
2009/04/27 Javascript
深入解析JavaScript中的变量作用域
2013/12/06 Javascript
jQuery实现仿美橙互联两级导航菜单效果完整实例
2015/09/17 Javascript
简单谈谈javascript中this的隐式绑定
2016/02/22 Javascript
Bootstrap基本样式学习笔记之表格(2)
2016/12/07 Javascript
JS实现求数组起始项到终止项之和的方法【基于数组扩展函数】
2017/06/13 Javascript
基于jquery实现五星好评
2017/11/18 jQuery
Angular实现的敏感文字自动过滤与提示功能示例
2017/12/29 Javascript
bootstrap 点击空白处popover弹出框隐藏实例
2018/01/24 Javascript
在vue中使用公共过滤器filter的方法
2018/06/26 Javascript
JavaScript面向对象程序设计创建对象的方法分析
2018/08/13 Javascript
javascript canvas API内容整理
2020/02/16 Javascript
通过js实现压缩图片上传功能
2020/02/25 Javascript
JS如何操作DOM基于表格动态展示数据
2020/10/15 Javascript
python使用urllib模块和pyquery实现阿里巴巴排名查询
2014/01/16 Python
Python切片操作去除字符串首尾的空格
2019/04/22 Python
python实现websocket的客户端压力测试
2019/06/25 Python
python3实现高效的端口扫描
2019/08/31 Python
基于python中__add__函数的用法
2019/11/25 Python
简单了解python调用其他脚本方法实例
2020/03/26 Python
关于Django Models CharField 参数说明
2020/03/31 Python
python3判断IP地址的方法
2021/03/04 Python
播音主持专业个人自我评价
2014/01/09 职场文书
我们的节日春节活动方案
2014/08/22 职场文书
反对四风自我剖析材料
2014/10/07 职场文书
2014年幼儿园德育工作总结
2014/12/17 职场文书
实习推荐信格式模板
2015/03/27 职场文书
科技活动总结范文
2015/05/11 职场文书
春风化雨观后感
2015/06/11 职场文书
MySQL单表千万级数据处理的思路分享
2021/06/05 MySQL
CSS实现单选折叠菜单功能
2021/11/01 HTML / CSS