使用隔离存储WP7在C#中解压缩文件

时间:2013-01-15 20:48:42

标签: c#-4.0

我是WP7平台的新手,我正在做一些涉及隔离存储的事情,现在有点卡住,这很简单,但不适合我。我的应用程序需要下载一个zip文件并保存到处理,我已完成下载部分,我可以将其保存到一个独立的存储,我使用独立的存储资源管理器检查状态,文件就在那里。

void wcMedia_OpenReadCompleted(object sender, OpenReadCompletedEventArgs e)
{

    filename1 = "book" + bookId + ".zip";
    if (e.Error != null) return;
    var str = e.Result;

    using (var myStore = IsolatedStorageFile.GetUserStoreForApplication())
    {
        if (myStore.FileExists(filename1)) myStore.DeleteFile(filename1);
        var buffer = new byte[1024];
        using (var isoStorStr = myStore.OpenFile(filename1, FileMode.CreateNew))
        {
            int bytesRead = 0;
            while ((bytesRead = str.Read(buffer, 0, 1024)) > 0)
                isoStorStr.Write(buffer, 0, bytesRead);
        }
    }


    Debug.WriteLine("done");
}

我的问题是如何解压缩zip文件,我的zip包含3个文件夹以及一些mp3和图像文件。我尝试了第三方库,如:SharpZipLib,dotnetzip但没有成功。有人可以帮我吗。非常感谢。

1 个答案:

答案 0 :(得分:0)

不要以为这是你的错。看起来它源于使用较早版本的.Net编译的DotNetZip。

见这里:http://dotnetzip.codeplex.com/workitem/14049

一条评论列出了可以修复4.0的补丁。如果你改变了库并发现错误,发布它我会帮助你实现它。