怎么用nodejs里面的子进程模块中创建文件夹

2024-12-03 04:51:37
推荐回答(1个)
回答1:

使用的方法:

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();
}
});
}

首先把需要创建的一个目录结构存放到一个数组里面,然后主要采用深搜的思想去实现(深度为数组的长度)。