小编use*_*255的帖子

nodejs 逐行读取文件并在最后获取其内容

我想使用 nodejs 逐行读取文件,然后在完成时将返回的结果作为 json 字符串获取。我试图这样做,但最后 console.log 打印 undefined 而不是列表。我得到了 Promise 的列表和结尾,但是如何将它返回给 main.js 中的调用函数?

我有我的 main.js 文件:

var fct = require('./romlist-parser');

console.log(fct.myfunction());
Run Code Online (Sandbox Code Playgroud)

并且 romlist-parser.js 具有以下内容:

var fs = require('fs');
var readline = require('readline');

exports.myfunction = function() {

    var promise = new Promise(function(resolve,reject) {
        var rd = readline.createInterface({
            input: fs.createReadStream('Atari 2600.txt'),
            console: false
        });

        var games = [];

        rd.on('line', function(line) {
            var arr = line.split(";");
            games.push({name:arr[0], title:arr[1]});
        });

        rd.on('close', function() {
            var json = JSON.stringify(games);
            resolve(games);
        });

    });

    promise.then((resolveResult) => {
        console.log(resolveResult); …
Run Code Online (Sandbox Code Playgroud)

filereader node.js promise line-by-line es6-promise

5
推荐指数
1
解决办法
8150
查看次数

标签 统计

es6-promise ×1

filereader ×1

line-by-line ×1

node.js ×1

promise ×1