【发布时间】:2013-02-09 23:13:34
【问题描述】:
我正在使用 fs.readdir() 函数读取 nodejs 中的目录。你给它一个包含路径的字符串,它返回一个数组,其中包含该目录路径内的所有文件,格式为字符串。它不适用于特殊字符(如 ï)。
我遇到了this similar issue,但我使用的是 OS X)。
首先,我创建了一个名为 encoding 的新目录并创建了一个名为 maïs.md 的文件(使用我的编辑器 Sublime Text)。
fs.readdir('encoding', function(err, files) {
console.log(files); // [ 'maïs.md' ]
console.log(files[0]); // maïs.md
console.log(files[0] === 'maïs.md'); // false
console.log(files[0] == 'maïs.md'); // false
console.log(files[0].toString('utf8') === 'maïs.md'); // false
});
上述测试对没有特殊字符的文件正常工作。如何正确比较?
【问题讨论】:
标签: node.js encoding special-characters readdir