Windows phone 8下载然后解压缩到隔离存储

时间:2014-07-27 20:39:44

标签: windows-phone-8 zip isolatedstorage

我正在编写具有以下功能的Windows Phone 8应用程序

  1. 从互联网下载zip文件
  2. 将其解压缩到隔离存储
  3. 我正在寻找一个处理它的解决方案,但还没有找到一次。如果您有任何建议请帮忙。

    提前致谢!

    修改

    我将其分解为几个步骤:

    1. 检查存储是否可用 - 完成

    2. 检查文件是否已压缩 - 完成

    3. 使用后台传输(或其他方法)下载到本地文件夹并向用户显示信息(百分比等) - NOT YET

    4. 将文件解压缩到隔离存储中的所需位置 - NOT YET

    5. 之后做的事情...... - 完成


    6. 对于第4步,我找到并修改了一些脚本以将文件解压缩到独立存储空间(使用SharpGIS.UnZipper lib):

      public async void UnzipAndSaveFiles(Stream stream, string name)
      {
          using (IsolatedStorageFile isoStore = IsolatedStorageFile.GetUserStoreForApplication())
          {
              using (var zipStream = new UnZipper(stream))
              {
                  foreach (string file in zipStream.FileNamesInZip)
                  {
                      string fileName = Path.GetFileName(file);
      
                      if (!string.IsNullOrEmpty(fileName))
                      {
                          StorageFolder folder = ApplicationData.Current.LocalFolder;
                          folder = await folder.CreateFolderAsync("html", CreationCollisionOption.OpenIfExists);
                          StorageFile file1 = await folder.CreateFileAsync(name, CreationCollisionOption.ReplaceExisting);
                          //save file entry to storage
                          using (var writer = new StreamWriter(await file1.OpenStreamForWriteAsync()))
                          {
                              writer.Write(file);
                          }
                      }
                  }
              }
          }
      }
      

      此代码未经测试(因为我没有下载任何文件)。

      任何人都可以指出任何应该纠正(增强)的事情吗?

      任何人都可以帮我修改它以提取受密码保护的文件(显然我有密钥)?

0 个答案:

没有答案