【Node.js】读取文件

作者: 德育处主任 | 来源:发表于2019-06-23 08:07 被阅读5次
微信订阅号:Rabbit_svip

在node.js里,读取文件分为 同步读取异步读取

  • 同步读取: fs.readFileSync()
  • 异步读取: fs.readFile()

可以看到,同步读取其实只是多了 Sync 一个单词,很好记。

准备

微信订阅号:Rabbit_svip

以上是文件目录结构,其中 readMe.md 是准备好的文件(用来读取的文件)。

fs.js 是代码文件。

微信订阅号:Rabbit_svip

以上是 readMe.md 的内容。


同步读取

let fs = require('fs');

let readMe = fs.readFileSync('readMe.md', 'utf8');
console.log(readMe);
微信订阅号:Rabbit_svip

let fs = require('fs'); 这句话是用来引入系统提供的文件模块。

fs.readFileSync() 有2个参数。

  • 第一个参数:要读取的文件名。
  • 第二个参数:编码格式。

把读取到的内容赋给一个变量。

以上就是 同步读取文件 的用法。


异步读取

let fs = require('fs');

fs.readFile('readMe.md', 'utf8', (err, data) => {
    if(err) throw err;
    console.log(data);
})

img(输出内容)

异步读取的方法和同步是差不多的。只是传参不一样。

fs.readFileSync() 有3个参数。

  • 第一个参数:要读取的文件名。
  • 第二个参数:编码格式。
  • 第三个参数:读取结果
    • err:出现的错误都会通过 err 这个参数返回(比如找不到文件等)。
    • data:读取文件成功后的返回结果。

以上就是 异步读取文件 的使用方法。


异步测试

let fs = require('fs');

fs.readFile('readMe.md', 'utf8', (err, data) => {
    if(err) throw err;
    console.log(data);
})

console.log(123);

在异步读取文件之后加了一句 输出123

如果是同步的话,代码是一行一行执行的,所以 “123” 肯定是最后输出。

但在异步中,读取是需要时间去处理的。所以在这段非常短的处理时间内,代码会继续做之后的事情。
所以这里会先输出“123”,再输 readMe.md 里的内容。

微信订阅号:Rabbit_svip

读取文件这个功能是一个比较重要的功能。
比如客户端发来一个访问,后端有时候需要返回一个html页面回去,这时通过读取文件就能实现这种功能。
当然,要返回html页面的话并不像上面例子中短短几句就能完事的。

相关文章

  • 【Node.js】读取文件

    在node.js里,读取文件分为 同步读取 和 异步读取。 同步读取: fs.readFileSync() 异步读...

  • node.js 学习五 之 文件操作

    node.js 中有同步读取文件和异步读取文件的区别 同步读取就是顺序进行,文件读取操作不进行完就不进行下一步操作...

  • node教程--回调函数

    node异步读取文件: node同步读取文件: 在 Node.js 中,异步式 I/O 是通过回调函数来实现的 f...

  • Node.js 逐行读取文件的 4 种方法

    Node.js可以同步或异步的方式逐行读取文件内容。其中,异步方式可以读取大型文件而不需要同时加载文件所有内容。 ...

  • node.js回调函数

    node.js异步编程的直接提现就是回调。我们可以异步读取文件,读取文件完成后,将文件作为回调参数返回,这样就不会...

  • node.js之fs模块

    Node.js的文件系统的Api 1、读取文件readFile函数 2、写文件 3、以追加方式写文件 4、打开文件...

  • nodejs 获取文件的内容,以及根据url显示不同的地址

    Node.js读取文件内容包括同步和异步两种方式。 1、同步读取,调用的是readFileSync varrf=r...

  • 3-廖雪峰-node-fs模块

    fs文件读取模块 Node.js内置的fs模块就是文件系统模块,负责读写文件。 和所有其它JavaScript模块...

  • Node.Js与Java的IO流,及底层会发生的故事。

    首先,我们来看Node.Js读取文件的操作 这样就可以读取到同级目录下的input.txt文件了,仔细看代码,也没...

  • 【Node.js】写入文件

    node.js的写入文件和读取文件一样,都是分为同步和异步。 同步写入:fs.writeFileSync() 异步...

网友评论

    本文标题:【Node.js】读取文件

    本文链接:https://www.haomeiwen.com/subject/rcwcxctx.html