欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

C#技術(shù)積累(解壓tar文件,解析xml,重命名文件,刪除文件)-創(chuàng)新互聯(lián)

由于業(yè)務(wù)需要最近寫了個(gè)小程序,拿來分享:

牡丹網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營(yíng)維護(hù)。創(chuàng)新互聯(lián)成立與2013年到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)。

先說背景,我呼叫中心系統(tǒng)管理,每周會(huì)導(dǎo)出一批錄音文件給客戶質(zhì)檢。錄音是直接從服務(wù)器下載拷貝的,一批錄音有上千條,而且原始導(dǎo)出的錄音有點(diǎn) ‘二’無法讓人摸清來龍去脈。導(dǎo)出來是這樣

C#技術(shù)積累(解壓tar文件,解析xml,重命名文件,刪除文件)

解壓后是這樣的,每個(gè)錄音有一個(gè)XML的解釋說明文件,文件名和錄音文件名一樣。這些文件名感覺上是用時(shí)間戳堆出來的。

C#技術(shù)積累(解壓tar文件,解析xml,重命名文件,刪除文件)

XML的解釋說明文件里有callID,來電號(hào)碼,來電時(shí)間等N多信息??蛻粢髮⑺械匿浺粑募嚎s一個(gè)包,且文件名用來電號(hào)碼+時(shí)間命名,這樣方便查看。

背景需求完畢。

分析解決方案:首先tar是Linux下的壓縮包,需要解壓,而且是批量處理,然后讀取xml的文檔信息,將來電號(hào)碼和來電時(shí)間提取出來組成新的文件名,然后將原錄音文件重新命名,也是批量處理。

分析完畢。

一開始想用Python(最近在學(xué)習(xí)的,還不熟)解決,放棄;用C++也是二把刀,怕趕不上時(shí)間;最后還是用了C#做個(gè)簡(jiǎn)單的小程序吧,畢竟還是熟悉的快一些。

從網(wǎng)上下載了DLL文件‘SharpZipLib.dll’,這里面包含了zip,rar,tar等壓縮和解壓縮的很多東東,感謝提供這個(gè)東東的。

這里的代碼網(wǎng)上有很多,隨便搜搜可以看到~~~~

解讀XML文件的信息,C#的system.xml是很好的東東。

 public static recordingInfo GetRecordingInfo(string xmlFileName)

    {

      recordingInfo rdInfo=new recordingInfo();

      string content = string.Empty;

      XmlDocument xmlDoc = new XmlDocument();

      try

      {

        xmlDoc.Load(xmlFileName); //加載XML文檔

        XmlNode node = xmlDoc.ChildNodes[1];

        //來電時(shí)間

        rdInfo.STime = node.Attributes["starttime"].Value.Substring(0, 19);

        //錄音文件名

        rdInfo.OldName = node.Attributes["filename"].Value;

        //來電號(hào)碼

        rdInfo.ANI = node.ChildNodes[0].ChildNodes[3].ChildNodes[7].InnerText;

      }

      catch (Exception ex)

      {

        throw ex; //這里可以定義你自己的異常處理

      }

      return rdInfo;

    }

recordingInfo是我對(duì)錄音文件的一個(gè)類:

 public class recordingInfo

  {

    public string OldName { get; set; }

    public string ANI { get; set; }

    public string STime { get; set; }

  }

然后就是文件重名命后和刪除原文件了,先來刪除文件的,這個(gè)簡(jiǎn)單:

    public bool DeleteFiles(string fileName)

    {

      if (File.Exists(fileName))

      {

        File.Delete(fileName);

        return true;

      }

      return false;

    }

文件重名命,第一次使用才知道C#的File類沒有rename這個(gè)方法,簡(jiǎn)直哭死人啦。網(wǎng)絡(luò)就是個(gè)神奇的東西,你不需要記住,只要會(huì)檢索,總會(huì)在某個(gè)地方有你需要的:引用這兩個(gè)

using Microsoft.VisualBasic;

using Microsoft.VisualBasic.Devices;

下面兩句話解決重命名,哈哈哈,你就笑吧,突然想你昨天看到的一句話,“程序員為什么喜歡寫代碼,因?yàn)槟鞘窃趧?chuàng)造一個(gè)生命,給他賦予程序智能~”

        Computer MyComputer = new Computer();

        MyComputer.FileSystem.RenameFile(FileName, newName);

幾個(gè)關(guān)鍵點(diǎn)都解決了,剩下的只需要組織代碼,將整個(gè)邏輯整理得當(dāng)就OK啦。

整體界面圖:

C#技術(shù)積累(解壓tar文件,解析xml,重命名文件,刪除文件)

C#技術(shù)積累(解壓tar文件,解析xml,重命名文件,刪除文件)

解壓后的文件是這樣的

C#技術(shù)積累(解壓tar文件,解析xml,重命名文件,刪除文件)

完畢,測(cè)試幾遍可以使用。

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

當(dāng)前標(biāo)題:C#技術(shù)積累(解壓tar文件,解析xml,重命名文件,刪除文件)-創(chuàng)新互聯(lián)
文章網(wǎng)址:http://chinadenli.net/article12/desjdc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)、外貿(mào)建站、定制開發(fā)、網(wǎng)站策劃、域名注冊(cè)、自適應(yīng)網(wǎng)站

廣告

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

成都網(wǎng)頁設(shè)計(jì)公司