我在 node.js 中运行这段代码,以便查看目录中的文件并查看它们的统计信息:
var getFiles = function (dir, done) {
fs.readdir(dir, function (err, files) {
if (err) return done(err);
var pending = files.length;
files.forEach(function (file) {
fullPath = dir + "/" + file;
console.log(fullPath);
fs.stat(fullPath, function (err, stat) {
if (err) {
console.log("Stat error");
} else if (stat && stat != undefined) {
console.log("Success");
}
});
});
});
}
我的问题是包含特殊字符的文件名。我是瑞典人,所以有很多 å、ä 和 ö。当输出大多数文件名时,fullPath 的输出是正确的,但只要文件名包含特殊字符,该字符就会显示为“?”,然后 fs.stat 失败,因为它找不到文件。我错过了什么?我在 Windows 上运行 v0.5.7 版本。
提前致谢。