Zip Local StorageFolder в Windows Phone 8, используя SharpCompress или Sytem.IO.Compression или
Я работаю над приложением для магазина Windows Phone 8 и мне нужно Zip Local StorageFolder (с некоторыми изображениями). Environment VS 2013. Я узнал, что могу добавлять ссылки только на SharpCompress & System.IO.Compression (но не.FileSystem).
SharpZipLib и DotNetZip не поддерживают WP8.
Приведенные SharpCompress примеры не работают.
Любое предложение с кодом очень поможет. Благодарю.
1 ответ
System.IO.Compression:
string GuidPath = Path.Combine(LocalStorage, Guid.NewGuid().ToString()) + ".zip";
using (FileStream zipToOpen = new FileStream(GuidPath, FileMode.Create))
{
using (ZipArchive archive = new ZipArchive(zipToOpen, ZipArchiveMode.Create))
{
String[] files = Directory.GetFiles(szFldrPath);
foreach( String echFile in files )
{
ZipArchiveEntry readmeEntry = archive.CreateEntry(Path.GetFileName(echFile));
using (BinaryWriter writer = new BinaryWriter(readmeEntry.Open()))
{
using (Stream source = File.OpenRead(echFile))
{
byte[] buffer = new byte[4096];
int bytesRead;
while ((bytesRead = source.Read(buffer, 0, buffer.Length)) > 0)
{
writer.Write(buffer, 0, bytesRead);
}
}
}
}
}
}