nodejs mysql 删除文件_NodeJS 文件夹拷贝以及删除功能

文件夹拷贝

function CopyDirectory(src, dest) {

if (IsFileExist(dest) == false) {

fs.mkdirSync(dest);

}

if (fs.existsSync(src) == false) {

return false;

}

// console.log("src:" + src + ", dest:" + dest);

// 拷贝新的内容进去

var dirs = fs.readdirSync(src);

dirs.forEach(function(item){

var item_path = path.join(src, item);

var temp = fs.statSync(item_path);

if (temp.isFile()) { // 是文件

// console.log("Item Is File:" + item);

fs.copyFileSync(item_path, path.join(dest, item));

} else if (temp.isDirectory()){ // 是目录

// console.log("Item Is Directory:" + item);

CopyDirectory(item_path, path.join(dest, item));

}

});

}

文件夹删除

function DeleteDirectory(dir) {

if (fs.existsSync(dir) == true) {

var files = fs.readdirSync(dir);

files.forEach(function(item){

var item_path = path.join(dir, item);

// console.log(item_path);

if (fs.statSync(item_path).isDirectory()) {

DeleteDirectory(item_path);

}

else {

fs.unlinkSync(item_path);

}

});

fs.rmdirSync(dir);

}

}

nodejs实现文件的拷贝复制

var fs = require( 'fs' ),

stat = fs.stat;

/*

* 复制目录中的所有文件包括子目录

* @param{ String } 需要复制的目录

* @param{ String } 复制到指定的目录

*/

var copy = function( src, dst ){

// 读取目录中的所有文件/目录

fs.readdir( src, function( err, paths ){

if( err ){

throw err;

}

paths.forEach(function( path ){

var _src = src + '/' + path,

_dst = dst + '/' + path,

readable, writable;

stat( _src, function( err, st ){

if( err ){

throw err;

}

// 判断是否为文件

if( st.isFile() ){

// 创建读取流

readable = fs.createReadStream( _src );

// 创建写入流

writable = fs.createWriteStream( _dst );

// 通过管道来传输流

readable.pipe( writable );

}

// 如果是目录则递归调用自身

else if( st.isDirectory() ){

exists( _src, _dst, copy );

}

});

});

});

};

// 在复制目录前需要判断该目录是否存在,不存在需要先创建目录

var exists = function( src, dst, callback ){

fs.exists( dst, function( exists ){

// 已存在

if( exists ){

callback( src, dst );

}

// 不存在

else{

fs.mkdir( dst, function(){

callback( src, dst );

});

}

});

};

// 复制目录

exists( './login', './haha', copy );

总结

以上所述是小编给大家介绍的NodeJS 文件夹拷贝及删除功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值