解決node.js使用fs讀取文件出錯

 

 

今天配接口,使用fs模塊讀取json出現了錯誤'no such file or directory',而後經查終於解決,特此記錄。node

使用nodejs的fs模塊讀取文件時習慣用相對路徑,可是運行的時候出現了上述的錯誤,緣由就是fs模塊讀取文件的相對路徑是以啓動server.js的位置爲基準的,而不是以server.js文件的位置。 
這就是這篇文章所要講述的問題。而且nodejs官方推薦在使用fs模塊讀取文件時使用絕對路徑,而不是相對路徑。json

可是寫絕對路徑又有些許麻煩,那該如何解決呢,參考如下代碼就能夠啦:ui

var fs = require('fs');
let path = require('path');
let PUBLIC_PATH = path.resolve(__dirname, 'xx.json');

fs.readFile(PUBLIC_PATH, 'utf8', function (err, data) {
  if (err) console.log(err);
 
});
相關文章
相關標籤/搜索