Node.js 文件夾目錄結(jié)構(gòu)創(chuàng)建實例代碼
第一次接觸NodeJS的文件系統(tǒng)就被它的異步的響應(yīng)給搞暈了,后來發(fā)現(xiàn)NodeJS判斷文件夾是否存在和創(chuàng)建文件夾是還有同步方法的,但是還是想嘗試使用異步的方法去實現(xiàn)。
使用的方法:
fs.exists(path, callback);
fs.mkdir(path, [mode], callback);
實現(xiàn)文件夾目錄結(jié)構(gòu)的創(chuàng)建代碼實現(xiàn)如下:
//創(chuàng)建文件夾 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('創(chuàng)建文件夾出錯!'); }else{ console.log(currentDir+'文件夾-創(chuàng)建成功!'); mkdir(pos+1,dirArray,_callback); } }); }else{ console.log(currentDir+'文件夾-已存在!'); mkdir(pos+1,dirArray,_callback); } }); } //創(chuàng)建目錄結(jié)構(gòu) function mkdirs(dirpath,_callback) { var dirArray = dirpath.split('/'); fs.exists( dirpath ,function(exists){ if(!exists){ mkdir(0, dirArray,function(){ console.log('文件夾創(chuàng)建完畢!準備寫入文件!'); _callback(); }); }else{ console.log('文件夾已經(jīng)存在!準備寫入文件!'); _callback(); } }); }
首先把需要創(chuàng)建的一個目錄結(jié)構(gòu)存放到一個數(shù)組里面,然后主要采用深搜的思想去實現(xiàn)(深度為數(shù)組的長度)。
以上這篇Node.js 文件夾目錄結(jié)構(gòu)創(chuàng)建實例代碼就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
- nodejs實現(xiàn)遍歷文件夾并統(tǒng)計文件大小
- Node.js查找當前目錄下文件夾實例代碼
- Node.js 使用遞歸實現(xiàn)遍歷文件夾中所有文件
- Node.JS 循環(huán)遞歸復(fù)制文件夾目錄及其子文件夾下的所有文件
- nodejs遍歷文件夾下并操作HTML/CSS/JS/PNG/JPG的方法
- Nodejs實現(xiàn)多文件夾文件同步
- 對node通過fs模塊判斷文件是否是文件夾的實例講解
- 利用node 判斷打開的是文件 還是 文件夾的實例
- Node.js 去掉種子(torrent)文件里的邪惡信息
- node.js中fs文件系統(tǒng)目錄操作與文件信息操作
- nodejs實現(xiàn)獲取本地文件夾下圖片信息功能示例
相關(guān)文章
npm?install?-g?@vue/cli常見問題解決匯總
這篇文章主要給大家介紹了關(guān)于npm?install?-g?@vue/cli常見問題解決的相關(guān)資料,文中通過實例代碼將解決的方式介紹的非常詳細,對遇到這個問題的朋友具有一定的參考學(xué)習價值,需要的朋友可以參考下2022-08-08Nodejs監(jiān)控事件循環(huán)異常示例詳解
這篇文章主要給大家介紹了關(guān)于Nodejs監(jiān)控事件循環(huán)異常的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習或者使用Nodejs具有一定的參考學(xué)習價值,需要的朋友們下面來一起學(xué)習學(xué)習吧2019-09-09Node.js調(diào)用fs.renameSync報錯(Error: EXDEV, cross-device link not
這篇文章主要介紹了Node.js調(diào)用fs.renameSync報錯(Error: EXDEV, cross-device link not permitted),非常具有實用價值,需要的朋友可以參考下2017-12-12Node.js操作MongoDB數(shù)據(jù)庫實例分析
這篇文章主要介紹了Node.js操作MongoDB數(shù)據(jù)庫,結(jié)合實例形式分析了node.js連接MongoDB數(shù)據(jù)庫以及增刪改查等相關(guān)操作技巧,需要的朋友可以參考下2020-01-01