与vb.net,有没有办法找到一个文件夹及其子文件夹中的所有压缩文件?

问题描述:

我知道如何找到基于使用扩展名的.zip文件,但有谁知道一种方法来查找所有压缩文件,而无需指定每种类型或扩展名?与vb.net,有没有办法找到一个文件夹及其子文件夹中的所有压缩文件?

下面是一些带有伪逻辑的代码。

Dim zipFiles = New DirectoryInfo(tempFolder & "\extract") _ 
          .GetFiles("*", SearchOption.AllDirectories) _ 
          .Where(Function(f) FILE IS COMPRESSED 

因此,基本上不必指定每种类型的压缩/压缩扩展。

这个简单的话是不可能的。虽然你可以用一些众所周知的压缩算法和格式来做到这一点,但重要的是要明白,任何人都可以想出一种新的压缩技术,它将使用自己的文件结构来存储压缩数据。另外尝试理解一个未压缩的文件在技术上可以包含与某些输入的压缩算法所生成的字节完全相同的序列。因此,一般来说,在大多数情况下,扩展是决定特定文件是否包含压缩数据的唯一方法。

因此,您最好的选择是向谷歌提供已知压缩格式和文件扩展名列表,并使用GetFiles()方法。

+0

你的回答很有道理,尽管它不是我想听到的。哈哈......但它确实有道理。谢谢。 – user1447679 2014-10-18 17:57:56