.net 如何在MonoTouch中使用System.IO.Packaging

.net 如何在MonoTouch中使用System.IO.Packaging,.net,xamarin.ios,zip,system.io.packaging,.net,Xamarin.ios,Zip,System.io.packaging,我试图在MonoTouch中使用System.IO.Packaging时遇到问题。 我找不到这个资源。 有人能告诉我在哪里可以找到这个资源吗?据我所知,我在MonoTouch中不可用 如果您需要拉链支持,可与MonoTouch配合使用 如果使用SharpZipLib,请注意此问题:是MonoTouch(5.x)未附带的WindowsBase.dll的一部分 但是,它的类型(如)与普通zip文件不完全兼容,因此如果您希望处理.zip文件,这可能不是理想的。在这种情况下,您最好使用@Jamie提到的

我试图在MonoTouch中使用
System.IO.Packaging
时遇到问题。 我找不到这个资源。
有人能告诉我在哪里可以找到这个资源吗?

据我所知,我在MonoTouch中不可用

如果您需要拉链支持,可与MonoTouch配合使用

如果使用SharpZipLib,请注意此问题:

是MonoTouch(5.x)未附带的
WindowsBase.dll
的一部分

但是,它的类型(如)与普通zip文件不完全兼容,因此如果您希望处理.zip文件,这可能不是理想的。在这种情况下,您最好使用@Jamie提到的替代库


如果您确实需要某些特定类型的
System.IO.Packaging
,那么您可以尝试从Mono源代码(开源)构建程序集,该源代码可以从中获得。

如果您想要压缩/解压某些内容,您可能还需要查看System.IO.Compression.GZIPStream(),该程序集也可以在MT中使用。使用如下:

string sContent;
string sDest = "zipped file with text content.zip";
using ( FileStream oIn = File.OpenRead( sDest ) )
using ( MemoryStream oOut = new MemoryStream() )
using ( GZipStream oZip = new GZipStream( oIn, CompressionMode.Decompress ) )
using ( StreamReader oReader = new StreamReader( oOut ) )
{
    oZip.CopyTo( oOut );
    oOut.Seek( 0, SeekOrigin.Begin );
    sContent = oReader.ReadToEnd();
}

我试过了,但是我不能压缩文件夹和更多的文件。但是谢谢你;)好的,谢谢;)我现在已经通过使用ICSHARP代码SharpZipLib解决了我的问题。