CpioArchive.Save

Save(string, CpioFormat)

将存档保存到提供的目标文件。

public void Save(string destinationFileName, CpioFormat cpioFormat = CpioFormat.OldAscii)
范围类型描述
destinationFileNameString要创建的存档的路径。如果指定的文件名指向一个现有文件,它将被覆盖。
cpioFormatCpioFormat定义 cpio 标头格式。

例外

例外(健康)状况
ArgumentExceptiondestinationFileName是零长度字符串,仅包含空格,或包含一个或多个由 System.IO.Path.InvalidPathChars 定义的无效字符。
ArgumentNullExceptiondestinationFileName一片空白。
PathTooLongException指定的destinationFileName、文件名或两者都超过了系统定义的最大长度。例如,在基于 Windows 的平台上,路径必须少于 248 个字符,文件名必须少于 260 个字符。
DirectoryNotFoundException指定的destinationFileName无效,(例如,它位于未映射的驱动器上)。
IOException打开文件时发生 I/O 错误。
UnauthorizedAccessExceptiondestinationFileName指定了一个只读文件并且访问权限不是读取的。- 或 - 路径指定了一个目录。- 或 - 调用者没有所需的权限。
NotSupportedExceptiondestinationFileName格式无效。

评论

可以将存档保存到与从中加载的路径相同的路径。 但是,不建议这样做,因为这种方法使用复制到临时文件。

例子

using (var archive = new CpioArchive())
{
    archive.CreateEntry("entry1", "data.bin");        
    archive.Save("archive.cpio");
}       

也可以看看


Save(Stream, CpioFormat)

将存档保存到提供的流中。

public void Save(Stream output, CpioFormat cpioFormat = CpioFormat.OldAscii)
范围类型描述
outputStream目标流。
cpioFormatCpioFormat定义 cpio 标头格式。

例外

例外(健康)状况
ArgumentNullExceptionoutput一片空白。
ArgumentExceptionoutput不可写。 - 或者 -output是我们从中提取的同一个流。 - 或 - 不可能将存档保存在cpioFormat由于格式限制。

评论

output必须是可写的。

例子

using (FileStream cpioFile = File.Open("archive.cpio", FileMode.Create))
{
    using (var archive = new CpioArchive())
    {
        archive.CreateEntry("entry1", "data.bin");        
        archive.Save(cpioFile);
    }
}       

也可以看看