2017-10-20 58 views
0

我複製.jpg文件到其他目錄(C:\ myFaceApp \保管箱\ exprtedFaces)無法將文件複製到一個目錄

我的源文件:C:/ myFaceApp /保管箱/面/ Monika1 /1404039d-2be3-43bc-b20b-35c0f4a5954b/1404039d-2be3-43bc-b20b-35c0f4a5954b_00-00-04_crop.jpg

我使用的代碼如下塊複製

targetPath=opts.exportDir; //C:\myFaceApp\dropbox\exprtedFaces 

fs.createReadStream(req.query.facePath).pipe(fs.createWriteStream(targetPath)); 
res.write(JSON.stringify({ OK: 1 })); 
res.end(); 

我正在一個像這樣的錯誤:

錯誤:EISDIR:目錄上的非法操作,打開'C:\ myFaceApp \ dropbox \ exprtedFaces'

+0

您應該複製有問題的代碼而不發送圖像 – imcvampire

+0

錯誤'EISDIR'說:此路徑不是文件,而是目錄。 – qqilihq

+1

你也可以使用fs.copyFile https://nodejs.org/api/fs.html#fs_fs_copyfile_src_dest_flags_callback – RidgeA

回答

1

您的問題是您正試圖寫入目錄而不是文件。因爲它是參數,因此createWriteStream需要一個文件名。試試這個:

fs.createReadStream(req.query.facePath).pipe(fs.createWriteStream(path.join(targetPath ,"file.jpg"))); 

你應該OFC給它一個非硬編碼的名字,這只是一個例子。看看這個路徑模塊。

+0

但我做了一個與視頻文件相同的東西,該文件對我來說是 –

+0

我不知道你在說什麼之前做過,因爲它不是問題的一部分,但這是'createWriteStream'的工作方式。 – Diasiare

+0

感謝這幫助 –

相關問題