2013-07-31 82 views
0

我正在嘗試使用node.js讀取本地文件。我的NPM模塊正在嘗試執行子進程,並且該進程打開要讀取的文件。在閱讀這篇引發錯誤讀取node.js中的本地文件時出現錯誤

{ [Error: ENOENT, open 'E:\Project\SecIntegrator\Attack\manifest.json'] 
    errno: 34, 
    code: 'ENOENT', 
    path: 'E:\\Project\\SecIntegrator\\Attack\\manifest.json' } 

實際路徑讀取該文件是

E:\Project\SecIntegrator\node_modules\restScannerDriver\GarudRudra\Attack\manifest.json 

我已經使用VAR configPath = path.join(path.dirname(fs.realpathSync(__filename)), '/');計算絕對路徑,但仍然沒有工作。

+0

您使用了用於讀取方法的結果? – Bernhard

+0

'file.readFile(fileName,'utf8',function(err,data){} – Gaurav

+0

不確定,但你的路徑看起來像一個Windows路徑,所以看看這裏http://stackoverflow.com/questions/10015877/node -js -fs-readfile-not-working-in-windows – Bernhard

回答

3

在NPM模塊內部,您的路徑會發生變化。 所以儘量在NPM使用__dirname創造這樣的真實路徑:

var filepath = fs.realpathSync(__dirname+'/'+relative path from here to your file); 

之後看什麼是文件路徑

相關問題