同步读文件

    除了标准的异步读取模式外, fs 也提供相应的同步读取函数。同步读取的函数和异步函数相比,多了一个 Sync 后缀,并且不接收回调函数,函数直接返回结果。

    fs 模块同步读取一个文本文件的代码如下:

    'use strict';



    var fs = require('fs');



    var data = fs.readFileSync('sample.txt', 'utf-8');

    console.log(data);

    可见,原异步调用的回调函数的 data 被函数直接返回,函数名需要改为 readFileSync ,其它参数不变。

    如果同步读取文件发生错误,则需要用 try…catch 捕获该错误:

    try {

    var data = fs.readFileSync('sample.txt', 'utf-8');

    console.log(data);

    } catch (err) {

    // 出错了

    }