如何在Node中读取文件?

时间:2014-10-01 10:32:10

标签: javascript node.js file

我想读取文件但是如果文件在特定路径上不可用而不是给出错误。我想创建一个文件(如果不存在)并且获取数据值为null。我使用过这些代码但没有工作请任何人帮助我吗?

fs.readFile(path, 'utf8', function (err,data) {
if (err) {
  return console.log(err);  //Here throw error if not available
}
 console.log(data);
 fileData = data;
});

我使用下面的代码它也无法正常工作。我想从文件中读取所有数据我应该放什么'?'在以下代码?

fs.open(path, 'w+', function(err, data) {
if (err) {
    console.log("ERROR !! " +err);
} else {
    fs.read(data, ? , 0, ? , null, function(err) {
        if (err) console.log("ERROR !! " +err);
    });
}
});

2 个答案:

答案 0 :(得分:1)

您的第一个代码段中有错误,请尝试:

fs.readFile(path, {encoding: 'utf8'}, function (err, data) {
  if (err) throw err;
   console.log(data);
 });

错误发生在"编码utf"中。它应该是一个对象。

请参阅:http://nodejs.org/api/fs.html#fs_fs_readfile_filename_options_callback

答案 1 :(得分:0)

if(fs.existsSync(file_path))
{
   var file_content = fs.readFileSync(file_path, 'utf-8');
} else {
   var file_content = fs.writeFileSync(file_path, '');
}