NodeJS:异步文件读取问题

时间:2012-01-19 06:03:31

标签: node.js

NodeJS新手。

是的我知道我可以使用一个框架,但我想在深入研究那里的无数精细工具之前先了解它。

我的问题:

var img = fs.readFileSync(path);

以上作品;

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

以上不起作用;

输入路径为:'C:\ NodeSite \ chrome.jpg'

哦,在Windows 7上工作。

任何帮助都会非常感激。

固定 深夜/早上编程,引入难以发现的错误。路径是从两个不同的地方设置的,因此两种情况下的源路径都不同。谢谢您的帮助。我是一个完整的numpty。 :)

2 个答案:

答案 0 :(得分:3)

如果您在阅读文件时没有设置编码,则会获得二进制内容。

因此,例如,以下代码段将使用UTF-8编码输出测试文件的内容。如果您不使用编码,您将在控制台(原始二进制缓冲区)上获得类似“”的输出。

var fs = require('fs');

var path = "C:\\tmp\\testfile.txt";
fs.readFile(path, 'utf8', function (err, data) {
  if (err) throw err;
  console.log(data);
});

另一个问题(特别是在基于Windows的操作系统上)可能是目标路径的正确转义。上面的示例显示了Windows上的路径必须如何转义。

答案 1 :(得分:0)

java小伙子们将只使用此javascript异步命令,就像在纯java中一样,轻松自如:

var fs = require('fs');
var Contenu = fs.readFileSync( fILE_FULL_Name , 'utf8');
console.log( Contenu );

这应该处理大小文件。