- 在C#中创建GZip存档
- 在C#中提取GZip存档
- 将GZip存档提取到C#流中
要将文件压缩到GZip存档中,我们将使用Aspose.ZIP for .NET。它是一个功能强大的API,可让您使用流行的存档格式,包括ZIP,7z,GZip等。如果你还没有用过Aspose.Zip,可以点击这里下载最新版测试。
在C#中创建GZip存档
以下是使用C#将文件压缩到GZip存档中的步骤。
- 创建一个GzipArchive类的对象。
- 使用GzipArchive.SetSource(String)方法将文件添加到存档。
- 使用GzipArchive.Save(String)方法创建GZip存档。
以下代码示例显示了如何使用C#创建GZip存档。
using (GzipArchive archive = new GzipArchive()){ // set source archive.SetSource("data.bin"); // create archive archive.Save("archive.gz");}
在C#中提取GZip存档
以下是使用Aspose.ZIP for .NET提取GZip存档的步骤。
- 创建GzipArchive类的对象,并使用GZip存档的路径对其进行初始化。
- 使用File.Create(String)方法为提取的内容创建文件。
- 使用GZipArchive.Open()方法打开GZip进行提取。
- 读取提取的内容并将其写入文件。
以下代码示例显示了如何使用C#提取GZip存档。
// load the GZip archiveusing (var archive = new GzipArchive("archive.gz")){ // create a file using (var extracted = File.Create("data.bin")) { // open archive var unpacked = archive.Open(); byte[] b = new byte[8192]; int bytesRead; // write to file while (0 < (bytesRead = unpacked.Read(b, 0, b.Length))) extracted.Write(b, 0, bytesRead); } }
将GZip存档提取到C#流中
还可以将GZip存档提取到内存流对象中。以下是执行此操作的步骤。
- 创建一个新的MemoryStream对象。
- 创建一个GzipArchive类的对象,并使用GZip存档的路径对其进行初始化。
- 提取GZip并使用GZipArchive.Open()。CopyTo(MemoryStream)方法复制到内存流。
下面的代码示例演示如何使用C#将GZip存档提取到内存流中。
// create a memory streamvar ms = new MemoryStream();// load GZip archiveusing (GzipArchive archive = new GzipArchive(File.OpenRead("sample.gz"))){ // extract and copy to memory stream archive.Open().CopyTo(ms); Console.WriteLine(archive.Name);}
如果你想试用Aspose的全部完整功能,可联系在线客服获取30天临时授权体验。
如果您有任何疑问或需求,请随时加入Aspose技术交流群(),我们很高兴为您提供查询和咨询。
标签:
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!