Я использую класс ZipFile.Получение ошибки в System.IO.Compression при попытке использования класса ZipFile
Для использования этого класса необходимо добавить ссылку/dll. Кажется, что вы можете использовать как System.IO.Compression
, так и dll Ionic.Zip
(по одному в то время).
В моем случае работает только последний. Проблема состоит в том, что Ionic.Zip
, похоже, не имеет метода: ExtracToFile(...)
, который перезаписывает существующий файл. Мне нужен этот метод плохо. Вместо этого, я могу только сделать:
zip.Extract(extractDirectory);
(Тогда я получаю сообщение об ошибке сказав файл уже существует)
Если я:
zip.ExtractToFile(extractDirectory);
Я получаю ошибку о том, что метод ExtractToFile делает не существует.
Другая вещь, чтобы отметить, что делает Using System.IO.Compression
, я получаю сообщение об ошибке, когда я делаю:
var zip = ZipFile.Read(finalFileToUnzip)
, который говорит, что он не может найти ZipFile (хотя я добавить библиотеку DLL в качестве ссылки, делая «Add Reference -> и выбрать файл .dll»)
Если я Using Ionic.Zip
, он будет принимать: var zip = ZipFile.Read(finalFileToUnzip)
Я не смог найти любую информацию или предыдущие сообщения об этой проблеме, я надеюсь, что кто-то может помощь
Любое представление о том, что может быть проблемой?
Вот еще код:
for (int i = 0; i < listWithZipToUnpack.Count; ++i)
{
extractDirectory = Path.Combine(projectPath.ToString(), pathDir + listWithZipToUnpack[i]);
var finalFileToUnzip = Path.Combine(projectPath.ToString(), pathDir, "Lely", listWithZipToUnpack[i]);
if (finalFileToUnzip.Equals("--Vælg fil--")) { continue; }
using (var zip = ZipFile.OpenRead(finalFileToUnzip))
{
if (!Directory.Exists(extractDirectory))
{
Directory.CreateDirectory(extractDirectory+"-"+listWithZipToUnpack[i]);
}
foreach (var zipArchiveEntry in zip.Entries)
{
zipArchiveEntry.ExtractToFile(extractDirectory);
}
}
}
Я использую рамки .NET 4.5.2
'ZipFile' был добавлен в .NET 4.5 ... в какой версии фреймворка вы используете? –
звучит так, будто у вас есть проблема «Путь» здесь вы можете показать, как вы назначаете путь к файлу/файлу содержимого, которое вам нужно зашифровать. – MethodMan
Я использую версию 4.5.2 .NET. Я отредактировал код как добавленный код 2 it – user1960836