如果我有一个FileStream,我如何检查它是否来自ZipArchive? 现在我使用一个抛出
的try catch语句'System.IO.InvalidDataException:'无法找到中央目录记录的结尾。'
如果流不是来自ZipArchive。
try
{
ZipArchive za = new ZipArchive(fIleStream, ZipArchiveMode.Read);
...
}
catch (Exception e)
{
...
}
答案 0 :(得分:2)
您可以嗅探流的前两个字节,看它是否与zip签名匹配。
如此处所述 https://pkware.cachefly.net/webdocs/casestudies/APPNOTE.TXT
应该是0x504b是zip数据。