У меня есть следующий способ распаковать файл после загрузки. Но это с ошибкойxamarin ionic zip unzip вызывает ошибку
System.ArgumentException Путь пуст в System.IO.Directory.CreateDirectory. Путь System.String 0x00000 в файле неизвестен на ionic.zip.zipentry.internalExtract system.string basedir system.io.stream outstream system.string пароль 0x00000 в filname неизвестно.
файл почтового индекса не имеет пароля, и может быть с например открытой компанией андроид почтового
public void ExtractBilderZip()
{
string documentsPath = System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal);
string unzipziel = Path.Combine(documentsPath, "Bilder");
// if Bilder does not exist create subdirectory
if (Directory.Exists(unzipziel)==false)
{
var directoryname = Path.Combine(documentsPath, "Bilder");
Directory.CreateDirectory(directoryname);
}
//////////////////////////////////////////////////////
string zipToUnpack = localPathB; //localPathB ist the zipFile name including path
// I tried with and wihout the following 2 lines which makes no diffence
zipToUnpack = zipToUnpack.Replace('/', Path.DirectorySeparatorChar);
unzipziel = unzipziel.Replace('/', Path.DirectorySeparatorChar);
try
{
ZipFile zip1 = ZipFile.Read(zipToUnpack);
zip1.ExtractAll(unzipziel,ExtractExistingFileAction.OverwriteSilently);
}
catch (System.Exception ex1)
{
//System.Console.Error.WriteLine("exception: " + ex1);
for (int i = 0; i < 10; i++)
{
Toast.MakeText(this, "exception: " + ex1, ToastLength.Long).Show();
}
}
}
Я решил свою проблему с помощью класса под названием ZipStorer, который я нашел путем googleing. Я нашел его здесь: https://zipstorer.codeplex.com/ Это крошечный и очень простой в использовании! – user1230268