第一次接觸NodeJS的文件系統就被它的異步的響應給搞暈了,后來發現NodeJS判斷文件夾是否存在和創建文件夾是還有同步方法的,但是還是想嘗試使用異步的方法去實現。
使用的方法:
fs.exists(path, callback);
fs.mkdir(path, [mode], callback);
實現文件夾目錄結構的創建代碼實現如下:
//創建文件夾function mkdir(pos, dirArray,_callback){ var len = dirArray.length; console.log(len); if( pos >= len || pos > 10){ _callback(); return; } var currentDir = ''; for(var i= 0; i <=pos; i++){ if(i!=0)currentDir+='/'; currentDir += dirArray[i]; } fs.exists(currentDir,function(exists){ if(!exists){ fs.mkdir(currentDir,function(err){ if(err){ console.log('創建文件夾出錯!'); }else{ console.log(currentDir+'文件夾-創建成功!'); mkdir(pos+1,dirArray,_callback); } }); }else{ console.log(currentDir+'文件夾-已存在!'); mkdir(pos+1,dirArray,_callback); } });}//創建目錄結構function mkdirs(dirpath,_callback) { var dirArray = dirpath.split('/'); fs.exists( dirpath ,function(exists){ if(!exists){ mkdir(0, dirArray,function(){ console.log('文件夾創建完畢!準備寫入文件!'); _callback(); }); }else{ console.log('文件夾已經存在!準備寫入文件!'); _callback(); } });}首先把需要創建的一個目錄結構存放到一個數組里面,然后主要采用深搜的思想去實現(深度為數組的長度)。
以上這篇Node.js 文件夾目錄結構創建實例代碼就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。
新聞熱點
疑難解答