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 });
}

也可以看看