如何从远程服务器下载压缩文件夹并将文件夹中的整个文件解压缩并将它们存储在与浏览器应用程序中的银灯 3 或 4 隔离的存储空间中。请有任何建议
4 回答
您可以像使用 Webclient 类的任何文件一样下载 zip 文件,查看 msdn 文档中的详细信息和示例以按需下载内容,它甚至讨论了如何从 zip 存档下载和获取特定文件。
但是,如果您想列出文件,请查看这篇博文,我实际上并没有尝试过,但它显示了如何获取 zip 存档中的所有文件。
编辑:我还发现这个讨论提供了一些想法,其中提到了 Silverlight 的这个Small unzip 实用程序,它看起来更健壮一些。
然后使用IsolatedStorageFile类来保存文件。
祝你好运!奥拉
对于(解)压缩,我强烈建议您使用开源DotNetZip 库。DotNetZip 在 Ms-PL 下获得许可,并且非常易于使用。
例如,压缩也很容易:
using (ZipFile zip = new ZipFile())
{
zip.AddEntry("MyFileName.png", null, pngStream);
// Save to stream from SaveFileDialog
zip.Save(stream);
}
Silverlight SharpZipLib是SharpZipLib的完整 Silverlight 3/4 和 Phone7 端口,较少 AES 加密。
一个显着的限制是您将在所有 Silverlight 压缩中发现的一个限制:仅支持条目元的 UTF8 编码。
您可以使用 http 或 frp 流获取文件,然后使用 GZipStream(.NET 类)解压缩流/文件。
GzipStream:http: //msdn.microsoft.com/en-us/library/system.io.compression.gzipstream.aspx
干杯——乔克