На самом деле я пытаюсь создать zip-файл каталога, но ZipFile.CreateFromDirectory()
, дающий ниже Исключение.System.IO.IOException: процесс не может получить доступ к файлу PATH_TO_CREATE_ZIP/file.zip ', потому что он используется другим процессом.
System.IO.IOException: Процесс не может получить доступ к файлу PATH_TO_CREATE_ZIP/file.zip», так как он используется другим процессом .
Ниже приведен фрагмент кода. :
public void createZipFile(string zipPath, string archiveFileName)
{
string DirectoryToBeArchive = zipPath + "\\" + archiveFileName;
if (Directory.Exists(DirectoryToBeArchive + ".zip"))
{
File.Delete(DirectoryToBeArchive);
ZipFile.CreateFromDirectory(zipPath, DirectoryToBeArchive + ".zip", CompressionLevel.Fastest, false);
}
else
ZipFile.CreateFromDirectory(zipPath, DirectoryToBeArchive + ".zip", CompressionLevel.Fastest, false);
Directory.Delete(DirectoryToBeArchive);
}
Помощь была бы очень оценена. Заранее спасибо. :)
Возможный дубликат [с # ZipFile.CreateFromDirectory - процесс не может получить доступ к файлу»\ _to \ _The \ _zip \ _file \ _created. zip ", потому что он используется другим процессом] (http://stackoverflow.com/questions/19395128/c-sharp-zipfile-createfromdirectory-the-process-cannot-access-the-file-path-t) –
И загляните в «Path.Combine» и «Path.ChangeExtension» –
. Вы пытаетесь архивировать каталог и поместить zip в тот же каталог, который вы архивируете. Конечно, вы получите эту ошибку, измените путь к zip-файлу в другой каталог. –