当前位置: 首页 > 面试题库 >

如何在NodeJs中读取文件到变量?

韶宏邈
2023-03-14
问题内容

我对NodeJ很陌生。而且我正在尝试将文件读入变量。这是我的代码。

var fs = require("fs"),
    path = require("path"),
    util = require("util");
        var content;
        console.log(content);
        fs.readFile(path.join(__dirname,"helpers","test.txt"), 'utf8',function (err,data) {
            if (err) {
                console.log(err);
                process.exit(1);
            }
            content = util.format(data,"test","test","test");
        });
        console.log(content);

但每次我运行该脚本,我得到 undefinedundefined

我想念什么?请帮助!


问题答案:

正如您在问题下的注释中所述,节点是异步的-意味着当您console.log调用第二个函数时,您的函数尚未完成执行

如果在读取文件后将日志语句移动到回调中,则应该看到输出的内容:

var fs = require("fs"),
    path = require("path"),
    util = require("util");
var content;
console.log(content);
fs.readFile(path.join(__dirname, "helpers", "test.txt"), 'utf8', function (err, data) {
    if (err) {
        console.log(err);
        process.exit(1);
    }
    content = util.format(data, "test", "test", "test");
    console.log(content);
});

即使这将解决您眼前的问题,但如果不了解节点的异步特性,您将遇到很多问题。



 类似资料:
  • 问题内容: 鉴于我知道路径名和行号,因此我尝试提取文件的单行,理想情况下,我希望这样做是在 不读取任何多余文件的情况下进行的 。 出于我在这里使用的目的,这是异步还是同步都没有关系。 我当前的(不良)实现如下所示: 我尝试使用createReadStream进行操作,但是数据事件似乎从未触发。谁能提供直接解决此问题的方法,或者向我指出一些NodeJS文件系统交互文档,该文档比标准库API文档驱动的

  • 问题内容: 是否可以在AngularJS中读取文件?我想将文件放入HTML5画布进行裁剪。 我在考虑使用指令吗?这是我要放入指令中的javascript代码: 问题答案: 是的,指令是正确的方法,但看起来有些不同: 工作示例:http : //plnkr.co/edit/y5n16v?p=preview 感谢lalalalalmbda提供此链接。

  • 我有一个zip文件(在一个jar文件中),我想读取init。我知道我可以使用getResourceAsStream(…)轻松读取txt文件,避免“URI不分层”错误。但现在确定我该如何为zip文件做到这一点。 下面是我的代码,但当我将代码导出到runnable jar并运行它时,它会抛出“URI非层次错误”。

  • 问题内容: 我试图将文本文件加载到我的JavaScript文件中,然后从该文件中读取行以获取信息,我尝试使用FileReader,但它似乎无法正常工作。有人可以帮忙吗? 问题答案: 是的,可以使用FileReader,我已经做了一个示例,这是代码: 最后,我只是读了其他一些吸引我的答案,但正如他们所建议的那样,您可能正在寻找使您能够从JavaScript文件所在的服务器(或设备)加载文本文件的代码

  • 我想从文本文件中读取文本。在下面的代码中,会发生异常(这意味着它会转到catch块)。我将文本文件放在应用程序文件夹中。我应该把这个文本文件(mani.txt)放在哪里才能正确阅读?

  • 问题内容: 我在App Engine上有一个文件。应用引擎上文件的路径是什么? 例如: 问题答案: 这对我有用: