2009-12-05 50 views
0

我有一個名爲test.zip的壓縮文件,其中包含一個名爲發票的目錄。在發票目錄裏面,每個文件都有不同的名稱。我想找到一個名爲summary.txt的特定文檔,它位於發票目錄中。如何使用rubyzip gem在壓縮目錄中找到特定條目?

我能得到一個手柄用來爲test.zip如下:

zip = Zip::ZipFile.open("/path/to/test.zip") 

但是當我使用

zip.find_entry("summary.txt") 

我得到零。

在另一方面,如果的summary.txt不是發票目錄內,而是在zip文件的根目錄本身,如上面所描述的方法find_entry似乎工作。

看來,不知何故,我必須尋找的summary.txt之前向下導航到發票目錄。

這是正確的嗎?如果是這樣,我該怎麼做?如果沒有,我做錯了什麼。

回答

1

您需要指定該文件的完整路徑:

zip.find_entry 'invoices/summary.txt' 
+0

我一定要到指定的目錄的絕對路徑,也可以是相對的? – rswolff 2009-12-07 17:40:28

+0

它必須是絕對路徑,沒有前導斜槓(/)。 – 2009-12-07 23:19:56