在 C# 中,我使用的是DotNetZip , 我有一个名为“innerZip.zip”的 zip,其中包含一些数据,另一个名为“outerZip.zip”的 zip 包含了 innerZip。我为什么要这样做?好吧,在设置密码时,密码实际上适用于添加到存档中的单个条目,而不是整个存档,通过使用这个内部/外部组合,我可以设置整个内部 zip 的通行证,因为它是外一。
问题是,代码比普通话说得更好:
ZipFile outerZip = ZipFile.Read("outerZip.zip");
outerZip.Password = "VeXe";
Stream innerStream = outerZip["innerZip.zip"].OpenReader();
ZipFile innerZip = ZipFile.Read(innerStream); // I'm getting the exception here.
innerZip["Songs\\IronMaiden"].Extract(tempLocation);
为什么我得到那个例外?内部文件是一个 zip 文件,所以我不应该得到那个例外吗?有没有办法解决这个问题,或者我只需要从外部提取内部,然后访问它?
提前谢谢..