2015-08-14 4 views
0

Я запускаю узел, и я хочу прочитать файл из папки% appdata%, и я предпочел бы не жестко кодировать этот путь.Узел Read File From% appdata%

Это в основном то, что я до сих пор:

//...require(some things) 
var fs = require('fs'); 

var fileData; 
try{ 
    fileData = fs.readFileSync('%appdata%/folder/file.txt',{encoding:'utf8'}); 
} 
catch(e){ 
    console.log(e); 
    fileData = 42; //default value 
} 

//... app.get(some things) 
//... app.listen 

Когда я запускаю это, я получаю сообщение:

{ [Error: ENOENT, no such file or directory 'C:\projectdirectory\%appdata%\folder\file.txt']

  errno: -4058,

  code: 'ENOENT',

  path: 'C:\projectdirectory\%appdata%\folder\file.txt',

  syscall: 'open' }

Как заставить его признать переменную% AppData%?

ответ

2

Вы должны получить значение из process.env вместо:

fileData = fs.readFileSync(process.env.APPDATA + '/folder/file.txt',{encoding:'utf8'}); 

 Смежные вопросы

  • Нет связанных вопросов^_^