【问题标题】:fs.readFileSync() fails in express js appfs.readFileSync() 在 express js 应用程序中失败
【发布时间】:2015-05-21 16:54:00
【问题描述】:

我的项目结构是:

- project
  - routes
     admin.js
     sql-requests.xml

现在,在我的admin.js 中,我正在尝试读取sql-requests.xml 文件。假设它们在完全相同的路径上,这是我的代码:

var fs = require('fs');
var content = fs.readFileSync('./sql-requests.xml');

这失败了。这是我尝试过的列表:

  • sql-requests
  • sql-requests.xml
  • /sql-requests.xml

【问题讨论】:

    标签: javascript node.js fs


    【解决方案1】:

    这将取决于您从中执行admin.js 的工作目录。如果您要访问当前执行脚本旁边的文件,那么以下内容会更可靠:

    var content = fs.readFileSync(__dirname + '/sql-requests.xml');
    

    有关详细信息,请参阅此答案(和问题):https://stackoverflow.com/a/18283508/112196

    【讨论】:

    • 谢谢佩罗!如果我的文件的位置会低一级,我该如何阅读它?假设文件在项目文件夹中,而不是路由
    • 例如向上使用__dirname + '../sql-requests.xml'或向下使用__dirname + 'routes/sql-requests.xml'
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-08-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-04
    • 2019-05-26
    • 2012-04-22
    相关资源
    最近更新 更多