GzipArchive.GzipArchive

GzipArchive()

初始化一个新的实例GzipArchive准备压缩的类.

public GzipArchive()

例子

以下示例显示了如何压缩文件。

using (GzipArchive archive = new GzipArchive()) 
{
    archive.SetSource("data.bin");
    archive.Save("archive.gz");
}

也可以看看


GzipArchive(Stream, bool)

初始化一个新的实例GzipArchive准备解压的类.

public GzipArchive(Stream sourceStream, bool parseHeader = false)
范围类型描述
sourceStreamStream存档的来源。
parseHeaderBoolean是否解析流头来找出属性,包括名称。仅对可搜索流有意义。

评论

此构造函数不解压缩。看Open解压方法.

例子

从流中打开存档并将其提取到内存流

var ms = new MemoryStream();
using (GzipArchive archive = new GzipArchive(File.OpenRead("archive.gz")))
  archive.Open().CopyTo(ms);

也可以看看


GzipArchive(string, bool)

初始化一个新的实例GzipArchive类.

public GzipArchive(string path, bool parseHeader = false)
范围类型描述
pathString存档文件的路径。
parseHeaderBoolean是否解析流头来找出属性,包括名称。仅对可搜索流有意义。

例外

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

评论

此构造函数不解压缩。看Open解压方法.

例子

按路径从文件中打开存档并将其解压缩到内存流

var ms = new MemoryStream();
using (GzipArchive archive = new GzipArchive("archive.gz"))
  archive.Open().CopyTo(ms);

也可以看看