SnappyArchive.Extract

Extract(Stream)

将 snappy 存档提取到流中。

public void Extract(Stream destination)
范围类型描述
destinationStream用于存储解压缩数据的流。

例外

例外(健康)状况
InvalidOperationException未读取存档标头和服务信息。
InvalidDataException标头或校验和中的数据错误。
ArgumentNullException目标流为空。
ArgumentException目标流不支持写入。

例子

using (FileStream sourceSnappyFile = File.Open(sourceFileName, FileMode.Open))
{
   using (FileStream extractedFile = File.Open(extractedFileName, FileMode.Create))
   {
       using (var archive = new SnappyArchive(sourceSnappyFile))
       {
           archive.Extract(extractedFile);
       }
   }
}

也可以看看


Extract(FileInfo)

将 snappy 存档提取到文件中。

public void Extract(FileInfo fileInfo)
范围类型描述
fileInfoFileInfoFileInfo 用于存储解压后的数据。

例外

例外(健康)状况
InvalidOperationException未读取存档标头和服务信息。
SecurityException调用者没有所需的权限来打开fileInfo.
ArgumentException文件路径为空或仅包含空格。
FileNotFoundException找不到该文件。
UnauthorizedAccessException文件路径是只读的或者是一个目录。
ArgumentNullExceptionfileInfo一片空白。
DirectoryNotFoundException指定的路径无效,例如在未映射的驱动器上。
IOException该文件已经打开。

例子

using (FileStream snappyFile = File.Open(sourceFileName, FileMode.Open))
{
    using (var archive = new SnappyArchive(snappyFile))
    {
        archive.Extract(new FileInfo("extracted.bin"));
    }
}

也可以看看


Extract(string)

通过路径将 snappy 存档提取到文件。

public FileInfo Extract(string path)
范围类型描述
pathString将存储解压缩数据的文件的路径。

例外

例外(健康)状况
InvalidOperationException未读取存档标头和服务信息。
ArgumentNullExceptionpath一片空白。
SecurityException调用者没有所需的访问权限。
ArgumentExceptionpath为空、仅包含空格或包含无效字符。
UnauthorizedAccessException访问文件path被拒绝。
PathTooLongException指定的path、文件名或两者都超过了系统定义的最大长度。例如,在基于 Windows 的平台上,路径必须少于 248 个字符,文件名必须少于 260 个字符。
NotSupportedException归档于path在字符串中间包含一个冒号 (:)。

例子

using (FileStream snappyFile = File.Open(sourceFileName, FileMode.Open))
{
    using (var archive = new SnappyArchive(snappyFile))
    {
        archive.Extract("extracted.bin");
    }
}

也可以看看