中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

NodeJS遍歷文件生產(chǎn)文件列表功能示例-創(chuàng)新互聯(lián)

本文實(shí)例講述了NodeJS遍歷文件生產(chǎn)文件列表功能。分享給大家供大家參考,具體如下:

創(chuàng)新互聯(lián)是一家專業(yè)提供隆昌企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站制作、成都做網(wǎng)站、外貿(mào)營銷網(wǎng)站建設(shè)H5網(wǎng)站設(shè)計(jì)、小程序制作等業(yè)務(wù)。10年已為隆昌眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站建設(shè)公司優(yōu)惠進(jìn)行中。

功能需求:在工作中我們可能經(jīng)常需要知道項(xiàng)目中靜態(tài)文件列表發(fā)布,一個(gè)一個(gè)去檢索寫,那就太苦逼了。

NodeJS遍歷文件生產(chǎn)文件列表功能示例

要想知道里面的文件列表是不是很蛋疼,可能我們也會有dos tree去獲取。

這里分享一下,通過node,知道文件路徑,并配置遠(yuǎn)程路徑,直接copy,發(fā)布。

新建filelist.js 里面都有注釋,我就不哆嗦了.

var fs = require("fs");
//path模塊,可以生產(chǎn)相對和絕對路徑
var path = require("path");
//配置遠(yuǎn)程路徑
var remotePath = "/resource/fd/promote/201507/qixi/";
//獲取當(dāng)前目錄絕對路徑,這里resolve()不傳入?yún)?shù)
var filePath = path.resolve();
//讀取文件存儲數(shù)組
var fileArr = [];
//讀取文件目錄
fs.readdir(filePath,function(err,files){
  if(err){
    console.log(err);
    return;
  }
  var count = files.length;
  //console.log(files);
  var results = {};
  files.forEach(function(filename){
    //filePath+"/"+filename不能用/直接連接,Unix系統(tǒng)是”/“,Windows系統(tǒng)是”\“
    fs.stat(path.join(filePath,filename),function(err, stats){
      if (err) throw err;
      //文件
      if(stats.isFile()){
        if(getdir(filename) == 'html'){
          var newUrl=remotePath+filename;
          fileArr.push(newUrl);
          writeFile(fileArr);
        }
        // (getdir(filename) == 'html')&&(fileArr.push(filename);writeFile(newUrl));
      //  console.log("%s is file", filename);
      }else if(stats.isDirectory()){
        // console.log("%s is a directory文件目錄", filename);
         //返回指定文件名的擴(kuò)展名稱 
         //console.log(path.extname("pp/index.html"));
         if(filename == 'css' || filename == 'images'){
//var readurl = filePath+'/'+filename;
             //filePath+"/"+filename不能用/直接連接,Unix系統(tǒng)是”/“,Windows系統(tǒng)是”\“
           //  console.log(path.join(filePath,filename));
             var name = filename;
             readFile(path.join(filePath,filename),name);
         }
      }
    });
  });
});
//獲取后綴名
function getdir(url){
  var arr = url.split('.');
  var len = arr.length;
  return arr[len-1];
}
//獲取文件數(shù)組
function readFile(readurl,name){
  console.log(name);
  var name = name;
  fs.readdir(readurl,function(err,files){
    if(err){console.log(err);return;}
    files.forEach(function(filename){
     // console.log(path.join(readurl,filename));
      fs.stat(path.join(readurl,filename),function(err, stats){
        if (err) throw err;
        //是文件
        if(stats.isFile()){
          var newUrl=remotePath+name+'/'+filename;
          fileArr.push(newUrl);
          writeFile(fileArr)
        //是子目錄
        }else if(stats.isDirectory()){
          var dirName = filename;
          readFile(path.join(readurl,filename),name+'/'+dirName);
          //利用arguments.callee(path.join())這種形式利用自身函數(shù),會報(bào)錯(cuò)
          //arguments.callee(path.join(readurl,filename),name+'/'+dirName);
        }
      });
    });
  });
}
// 寫入到filelisttxt文件
function writeFile(data){
  var data = data.join("\n");
  fs.writeFile(filePath+"/"+"filelist.txt",data+'\n',function(err){
    if(err) throw err;
    console.log("寫入成功");
  });
}

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)建站www.rwnh.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

當(dāng)前名稱:NodeJS遍歷文件生產(chǎn)文件列表功能示例-創(chuàng)新互聯(lián)
文章分享:http://www.rwnh.cn/article12/ccehdc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設(shè)、網(wǎng)站導(dǎo)航、虛擬主機(jī)、響應(yīng)式網(wǎng)站建站公司、動(dòng)態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營
高青县| 南宫市| 平泉县| 嘉兴市| 贡觉县| 来凤县| 高邑县| 扬中市| 贞丰县| 台山市| 阳朔县| 大石桥市| 安塞县| 洮南市| 锡林浩特市| 枣强县| 大石桥市| 沂南县| 开封县| 常山县| 济源市| 宜宾市| 江西省| 八宿县| 北流市| 饶河县| 临潭县| 英吉沙县| 乐安县| 平顶山市| 德化县| 合肥市| 山东省| 夏津县| 吉木乃县| 闻喜县| 广东省| 台江县| 互助| 江永县| 尼玛县|