重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这篇文章将为大家详细讲解有关使用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怎么实现一个文件夹拷贝和删除功能就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。