簡體   English   中英

使用C#計算Zip文件中的文件數

[英]Count number of files in a Zip File with c#

我正在生成一些.csv文件,因此需要在Zip文件中對其進行壓縮。 好的,我有一個框架可以做到這一點,也許一切都會好起來的。

但! 正如TDD所說,經過一些測試,我就可以編寫代碼!

我的第一個測試聽起來很簡單,但是在讀取Zip文件時遇到了一些問題,有人知道一種簡單的方法來計算zip文件中文件的數量嗎?

您似乎正在尋找類似DotNetZip的東西。

編輯 :例如:

int count;
using (ZipFile zip = ZipFile.Read(path))
    count = zip.Count;

我不認為這是您提出的TDD問題,但我還是會回答。

[Test]
public void countsNumberOfFilesInZip() {
  var counter = new FileCounter("existing_archive_with_2_files.zip");
  AssertEqual(2, counter.count());
}

現在,使用您選擇的庫,使FileCounter工作。 一旦它起作用並且您通過了測試,則可以選擇重構代碼,以便它使用模擬框架模擬對zip庫的調用。 現在,您不再依賴文件系統了。 (除非磁盤I / O大大降低了測試速度,否則我可能不會走得太遠)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM