2014-07-25 43 views
1

我想一個文件夾複製到另一個使用的node.js這裏是文件夾路徑: -Node.js的錯誤:EISDIR,打開錯誤

D:\node\files\11\j1_1\j1_2\j1_3 我想文件夾j1_3複製到路徑 D:\node\files\11\j1_1\

這裏是我的代碼: -

var source = fs.createReadStream(old); 
var dest = fs.createWriteStream(newp); 
source.pipe(dest); 
source.on('end', function() { /* copied */ }); 
source.on('error', function (err) { 
    console.log("hi"); 
    /* error */ 
}); 

,但我收到此錯誤: -

events.js:72 
    throw er; // Unhandled 'error' event 
     ^
Error: EISDIR, open 'D:\node\files\11\j1_1' 

我也嘗試fs.rename函數,但得到相同的錯誤。

+0

一個額外的澄清。在寫入流中出現的錯誤是因爲fs不會自動將新文件名追加到dest。 cp和ncp是做什麼的,所以要解決這個問題,你也可以將新的文件名添加到dest,而不是使用ncp/cp。導致:newp + path.basename(old); – Bram

+0

@Bram謝謝你的信息:) – user3819192

回答