【发布时间】:2015-11-03 07:14:31
【问题描述】:
我尝试上传文件并移动到已经存在的新目录。
关注Writing files in Node.js 但我得到了错误:
Error: EISDIR, open '/Users/name/Sites/project/app/assets/images/UploadTemporary/'
at Error (native)
我发现Using Node.js I get, "Error: EISDIR, read" 和Node.js Error: EISDIR, open Error 类似的错误信息,我的UploadTemporary 文件夹已经存在我搞错了什么?
我不明白,如果它不是目录,还能是什么?
var multipart = require('connect-multiparty');
var fs = require('fs');
var path = require('path');
var appDir = path.dirname(require.main.filename);
...
var sourceFile = req.files.file[0].path;
var destinationFile = appDir + '/assets/images/UploadTemporary/';
var source = fs.createReadStream(sourceFile);
var destination = fs.createWriteStream(destinationFile);
source.pipe(destination);
source.on('end', function () {
fs.unlinkSync(sourceFile);
});
【问题讨论】:
-
你需要在
destinationFile中给出实际的文件名 -
你的意思是这样的
var destinationFile = appDir+'/assets/images/UploadTemporary/'+newfilename -
没错。我认为您认为仅提供目录名称将创建一个具有源文件名称的文件,对吧?
标签: javascript node.js fs