MonoDroid似乎缺少Android.Uitl.Zip命名空间。
Mono for Android是否有办法将资产解压缩到文档文件夹?
以下是Java中的内容: http://www.jondev.net/articles/Unzipping_Files_with_Android_(Programmatically)
答案 0 :(得分:1)
我试图做同样的事情,不得不求助于第三方图书馆。其他人建议使用SharpZipLib,但如果您没有开发一个开源项目,许可证可能会成为一个问题。 DotNetZip也是开源的,但它有一个更宽松的许可证,我能够在Mono for Android中使用源代码而不会有太多麻烦。到目前为止我只用它来提取拉链,所以如果你想使用任何其他功能,你可能需要做一些调试。
以下是我使用的程序:
从http://dotnetzip.codeplex.com/SourceControl/list/changesets获取源代码。
将Zip,Zlib和CommonSrc目录复制到Android Mono项目中。仅复制.cs文件,不复制任何子目录。
从Zip目录中删除ZipFile.SaveSelfExtractor.cs文件。
从ZipEntry.Extract.cs中的ValidateOutput函数中注释掉这一行。
outFileName = outFileName.Replace("/","\\");
一旦我完成了所有这些,提取非常简单:
using Ionic.Zip;
Zipfile zip = ZipFile.Read(archivepath);
zip.ExtractAll(extractpath);