作爲Perl腳本的一部分,我試圖從zip文件夾中讀取組件而不解壓縮它們。經過一番研究,我開始嘗試使用Archive :: Zip :: MemberRead,創建一個test.zip,其中包含一個帶有2個文本字段的測試文件夾,它似乎工作正常。我面臨的問題是我實際需要解析zip文件的內容,只是在壓縮文件中包含所有.txt,.dat,.csv文件而沒有任何子目錄,這似乎是導致問題的原因。 test.zip包含大約30個不同的壓縮文件,包括node_info.txt,並且我一直在使用下面的代碼,它在zip文件夾中有一個子目錄時工作。用Perl讀取zip文件內容
my $zip = Archive::Zip->new("C:\\test.zip");
my $fh = Archive::Zip::MemberRead->new($zip,'node_info.txt');
while (defined(my $line = $fh->getline()))
{
print $line . "\n";
}
當我嘗試運行它,雖然它的錯誤無法在位於C未定義的值調用方法「readChunk」:/Perl/lib/Archive/Zip/MemberRead.pm線268有什麼不同在傳遞特定成員以供閱讀時,我需要做些什麼?
你需要使用Perl嗎?另一種方法是使用Perl來驅動一個像7zip這樣的命令行應用程序。 – David
並非真正需要,但是儘量避免儘可能多的第三方內容,因爲這將是人們從多臺機器上運行的東西,所以我想盡可能保持依賴關係不變。 – user1401967