真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

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

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

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

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

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

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

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

XML的解釋說明文件里有callID,來電號碼,來電時間等N多信息。客戶要求將所有的錄音文件壓縮一個包,且文件名用來電號碼+時間命名,這樣方便查看。

背景需求完畢。

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

分析完畢。

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

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

這里的代碼網(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];

        //來電時間

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

        //錄音文件名

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

        //來電號碼

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

      }

      catch (Exception ex)

      {

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

      }

      return rdInfo;

    }

recordingInfo是我對錄音文件的一個類:

 public class recordingInfo

  {

    public string OldName { get; set; }

    public string ANI { get; set; }

    public string STime { get; set; }

  }

然后就是文件重名命后和刪除原文件了,先來刪除文件的,這個簡單:

    public bool DeleteFiles(string fileName)

    {

      if (File.Exists(fileName))

      {

        File.Delete(fileName);

        return true;

      }

      return false;

    }

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

using Microsoft.VisualBasic;

using Microsoft.VisualBasic.Devices;

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

        Computer MyComputer = new Computer();

        MyComputer.FileSystem.RenameFile(FileName, newName);

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

整體界面圖:

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

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

解壓后的文件是這樣的

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

完畢,測試幾遍可以使用。

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


名稱欄目:C#技術(shù)積累(解壓tar文件,解析xml,重命名文件,刪除文件)-創(chuàng)新互聯(lián)
當前網(wǎng)址:http://weahome.cn/article/desjdc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部