我成功使用Node.js和formidable模块上传文件,但保存在磁盘上的文件格式有问题(编码错误)。 例如,如果我上传图像,则无法查看它;如果我上传txt文件,gedit会提供以下消息: “gedit未能检测到字符编码。请检查您是否尝试打开二进制文件。从菜单中选择一个字符编码,然后重试。”
这是代码:
form.encoding = 'utf-8';
form.parse(req, function(err, fields, files) {
fs.writeFile('test.js', files.upload,'utf8', function (err) {
if (err) throw err;
console.log('It\'s saved!');
});
});