NodeJS使用相对路径访问文件

时间:2015-09-21 22:03:22

标签: node.js express fs

这似乎是一个直截了当的问题。但我无法解决这个问题。 在helper1.js中,我想访问foobar.json(来自config/dev/

root
  -config
   --dev
    ---foobar.json
  -helpers
   --helper1.js

我无法让这个工作fs: how do I locate a parent folder?

这里的任何帮助都会很棒。

2 个答案:

答案 0 :(得分:114)

您可以使用path模块将helper1.js所在目录的路径加入foobar.json的相对路径。这将为您提供foobar.json的绝对路径。

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

var jsonPath = path.join(__dirname, '..', 'config', 'dev', 'foobar.json');
var jsonString = fs.readFileSync(jsonPath, 'utf8');

这应该适用于Linux,OSX和Windows,假设采用UTF8编码。

答案 1 :(得分:11)

简单!名为..的文件夹是父文件夹,因此您可以创建所需文件的路径

var foobar = require('../config/dev/foobar.json');

如果你需要上升两级,你可以写../../

this SO answer及其评论

中有关此内容的更多详细信息