class CompressOperation
{
//http://tech.e800.com.cn/articles/2009/827/1251337524145_1.html
static void Compress(Stream source, Stream dest)
{
using (GZipStream zipStream = new GZipStream(dest, CompressionMode.Compress, true))
{
byte[] buf = new byte[1024];
int len;
while ((len = source.Read(buf, 0, buf.Length)) > 0)
zipStream.Write(buf, 0, len);
}
}
public static void CompressString2File(string strSource, string fileName)
{
using (MemoryStream source = new MemoryStream(Encoding.UTF8.GetBytes(strSource)))
using (FileStream fsWrite = new FileStream(fileName, FileMode.Create))
Compress(source, fsWrite);
}
static void Decompress(Stream source, Stream dest)
{
using (GZipStream zipStream = new GZipStream(source, CompressionMode.Decompress, true))
{
byte[] buf = new byte[1024];
int len;
while ((len = zipStream.Read(buf, 0, buf.Length)) > 0)
dest.Write(buf, 0, len);
}
}
public static string DecompressFile2String(string fileName)
{
using (FileStream fs = new FileStream(fileName, FileMode.Open))
using (MemoryStream ms = new MemoryStream())
{
Decompress(fs, ms);
return Encoding.UTF8.GetString(ms.ToArray());
}
}
}
分享到:
相关推荐
本文将深入探讨C#语言中三种实现字符串压缩与解压的方法。 1. **GZipStream** GZipStream是.NET Framework提供的用于压缩和解压缩数据的类,它是基于Gzip文件格式的。要使用GZipStream,我们需要创建一个...
本文将介绍如何自定义一个简单的字符串压缩和解压缩的方法,使用.NET框架内置的`System.IO.Compression.GZipStream`类。 首先,让我们分析`ZipLib`类中的`Zip`方法。这个方法接收一个字符串`value`作为输入,其目的...
使用以下代码进行压缩和解压 /// /// 利用ICSharpCode压缩 /// /// <param name="param"></param> /// <returns></returns> public static string IC_Compress(string param) { byte[] data = System....
对于字符串压缩,SharpZipLib提供了`GZipStream`和`DeflaterStream`类,分别用于GZip和ZIP格式的压缩。这里我们以GZip为例,演示如何压缩和解压缩字符串: ```csharp public static string CompressString(string ...
根据给定文件的信息,本文将围绕“字符串的压缩与解压”这一主题展开,深入探讨字符串压缩和解压的基本原理、实现方法以及应用场景等多方面内容。 ### 字符串压缩和解压概述 字符串的压缩与解压是计算机科学中的一...
C#中的字符串是不可变对象,这意味着每次修改字符串都会创建新的字符串实例。常用的方法有`Substring()`用于截取子字符串,`Replace()`用于替换特定字符或字符串,`Trim()`用于去除字符串两端的空白字符,`IndexOf...
总结起来,C#字符压缩性能对比是一项重要的技术评估,它可以帮助开发者选择最适合应用场景的压缩算法。通过源代码和demo,我们可以具体分析各种算法的优缺点,以优化数据处理效率。对于大型数据传输或存储需求,理解...
字符串采用UTF-8编码获得byte数组,保证两端通用,如果应用对编码有要求,两端同时改为其他编码方式也可以 从Java和C#的代码看,两者代码上有细微差别,但是思路方面两者基本是一样的 另外一个备忘,Java里边,...
c# Lz77 压缩算法,已经使用很久 没有bug
【压缩包子文件的文件名称列表】:“Net开发资料”可能是压缩包内文件夹的名字,意味着压缩包内的内容可能包含多个子文件夹或文档,分别对应.NET开发的不同方面,如C#语言教程、Ajax实践案例、正则表达式详解以及...
在C#中,可以采用多种方法将字符串转换为ASCII码,但本例中提供的代码展示了通过循环遍历字符串中的每个字符并将其转换为对应的ASCII值,然后进一步将这些十进制的ASCII值转换为二进制表示的过程。 #### 3. **代码...
在本文中,我们将深入探讨如何使用C#编程语言来处理7z压缩格式。7z是一种高效、开源的压缩格式,由7-Zip软件提供支持,它具有极高的压缩比率和强大的加密功能。C#,作为.NET框架的主要开发语言,通过.NET Framework...
3. **字符串压缩**:字符串压缩是减少数据存储空间的一种方法,常使用LZ77、LZW等压缩算法。例如,gzip和deflate是HTTP传输中常见的压缩格式。在编程中,可以使用`zlib`库(Python)或`System.IO.Compression`(C#)...
【描述】"传智播客.Net培训—C#编程基础】2 字符串.rar"的描述简明扼要,表明这是一份专门针对初学者的C#字符串教学资源。传智播客是一家知名的IT教育机构,他们的课程以实践为导向,旨在帮助学员快速掌握编程技能。...
本示例源代码主要展示了如何在C#中进行图片和Base64字符串之间的转换。下面将详细介绍这两个过程: 1. **图片转Base64字符串**: - 首先,你需要读取图片文件。在C#中,可以使用`System.Drawing.Image`类来加载...
**字符串压缩与解压缩:** 除了处理文件,我们还可以使用.NET框架对字符串进行压缩和解压缩。这通常涉及使用GZipStream或DeflateStream,它们提供了数据的压缩和解压缩功能。以下是一个用GZipStream压缩和解压缩字符...
C#利用SharpZipLib进行压缩和解压 C#中的压缩和解压是非常常见的操作, SharpZipLib是一个流行的压缩库,它提供了压缩和解压的功能。在本文中,我们将使用SharpZipLib库来实现文件的压缩和解压。 SharpZipLib简介...