国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

NodeJS 文件夾拷貝以及刪除功能

2019-11-19 10:54:55
字體:
來源:轉載
供稿:網(wǎng)友

文件夾拷貝

function CopyDirectory(src, dest) {  if (IsFileExist(dest) == false) {    fs.mkdirSync(dest);  }  if (fs.existsSync(src) == false) {    return false;  }  // console.log("src:" + src + ", dest:" + dest);  // 拷貝新的內(nèi)容進去  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實現(xiàn)文件的拷貝復制

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() ){          // 創(chuàng)建讀取流          readable = fs.createReadStream( _src );          // 創(chuàng)建寫入流          writable = fs.createWriteStream( _dst );           // 通過管道來傳輸流          readable.pipe( writable );        }        // 如果是目錄則遞歸調(diào)用自身        else if( st.isDirectory() ){          exists( _src, _dst, copy );        }      });    });  });};// 在復制目錄前需要判斷該目錄是否存在,不存在需要先創(chuàng)建目錄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 文件夾拷貝及刪除功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網(wǎng)網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 佛山市| 镇原县| 博罗县| 巫山县| 会宁县| 万全县| 奇台县| 黎平县| 云林县| 黄浦区| 阿鲁科尔沁旗| 新干县| 建水县| 黔江区| 嘉兴市| 塔河县| 浪卡子县| 通道| 修武县| 山东| 莫力| 华亭县| 博罗县| 长沙县| 郯城县| 河西区| 台北县| 辽阳市| 东山县| 东至县| 仁布县| 米林县| 大英县| 城固县| 常德市| 西贡区| 绍兴县| 达拉特旗| 巴南区| 日照市| 封丘县|