Archive.Save

Save(Stream, ArchiveSaveOptions)

Сохраняет архив в указанный поток.

public void Save(Stream outputStream, ArchiveSaveOptions saveOptions = null)
ПараметрТипОписание
outputStreamStreamЦелевой поток.
saveOptionsArchiveSaveOptionsВарианты сохранения архива.

Исключения

исключениеусловие
ArgumentExceptionoutputStream не доступен для записи.

Примечания

outputStreamдолжен быть доступен для записи.

Примеры

using (FileStream zipFile = File.Open("archive.zip", FileMode.Create))
{
    using (var archive = new Archive())
    {
        archive.CreateEntry("entry.bin", "data.bin");
        archive.Save(zipFile);
    }
}

Смотрите также


Save(string, ArchiveSaveOptions)

Сохраняет архив в указанный файл назначения.

public void Save(string destinationFileName, ArchiveSaveOptions saveOptions = null)
ПараметрТипОписание
destinationFileNameStringПуть создаваемого архива. Если указанное имя файла указывает на существующий файл, он будет перезаписан.
saveOptionsArchiveSaveOptionsВарианты сохранения архива.

Исключения

исключениеусловие
ArgumentNullExceptiondestinationFileName нулевой.
SecurityExceptionУ вызывающего абонента нет необходимого разрешения на доступ.
ArgumentExceptiondestinationFileName пуст, содержит только пробелы или содержит недопустимые символы.
UnauthorizedAccessExceptionДоступ к файлуdestinationFileName отказано.
PathTooLongExceptionУказанныйdestinationFileName, имя файла или оба превышают максимальную длину, определенную системой. Например, на платформах Windows длина пути должна быть менее 248 символов, а длина имени файла — менее 260 символов.
NotSupportedExceptionФайл вdestinationFileName содержит двоеточие (:) в середине строки.

Примечания

Архив можно сохранить по тому же пути, по которому он был загружен из . Однако делать это не рекомендуется, поскольку при таком подходе используется копирование во временный файл.

Примеры

using (var archive = new Archive())
{
    archive.CreateEntry("entry.bin", "data.bin");
    archive.Save("archive.zip",  new ArchiveSaveOptions() { Encoding = Encoding.ASCII });
}

Смотрите также