手机
当前位置:查字典教程网 >编程开发 >asp.net教程 >.NET 2.0 的压缩功能代码
.NET 2.0 的压缩功能代码
摘要:在.net1.1中我们要实现压缩这一功能,一般都是用opensource的SharpZipLib或者调用J#类库。现在在.net2.0中增加...

在.net1.1中我们要实现压缩这一功能,一般都是用opensource的SharpZipLib或者调用J#类库。

现在在.net2.0中增加了压缩功能,名字空间为usingSystem.IO.Compression;

以下是使用示例:

压缩字符串

复制代码 代码如下:

publicstaticstringZipString(stringunCompressedString)

{

byte[]bytData=System.Text.Encoding.UTF8.GetBytes(unCompressedString);

MemoryStreamms=newMemoryStream();

Streams=newGZipStream(ms,CompressionMode.Compress);

s.Write(bytData,0,bytData.Length);

s.Close();

byte[]compressedData=(byte[])ms.ToArray();

returnSystem.Convert.ToBase64String(compressedData,0,compressedData.Length);

}

解压缩字符串

复制代码 代码如下:

publicstaticstringUnzipString(stringunCompressedString)

{

System.Text.StringBuilderuncompressedString=newSystem.Text.StringBuilder();

byte[]writeData=newbyte[4096];

byte[]bytData=System.Convert.FromBase64String(unCompressedString);

inttotalLength=0;

intsize=0;

Streams=newGZipStream(newMemoryStream(bytData),CompressionMode.Decompress);

while(true)

{

size=s.Read(writeData,0,writeData.Length);

if(size>0)

{

totalLength+=size;

uncompressedString.Append(System.Text.Encoding.UTF8.GetString(writeData,0,size));

}

else

{

break;

}

}

s.Close();

returnuncompressedString.ToString();

}

压缩文件

复制代码 代码如下:

publicstaticboolAddZip(stringsrcFilename,stringzipFileName)

{

if(!File.Exists(srcFilename))

returnfalse;

boolresult;

FileStreamfs=null,output=null;

GZipStreamzipStream=null;

try

{

fs=newFileStream(srcFilename,FileMode.Open,FileAccess.Read);

byte[]buffer=newbyte[fs.Length];

fs.Read(buffer,0,buffer.Length);

fs.Close();

if(!File.Exists(zipFileName))

{

output=File.Create(zipFileName);

zipStream=newGZipStream(output,CompressionMode.Compress);

zipStream.Write(buffer,0,buffer.Length);

result=true;

}

else

{

result=false;

}

}

catch(Exception)

{

result=false;

}

finally

{

if(zipStream!=null)

{

zipStream.Flush();

zipStream.Close();

}

}

returnresult;

}

【.NET 2.0 的压缩功能代码】相关文章:

ASP.NET 输出缓存移除的实例代码

ASP.NET 2.0下的条件编译

asp.net 购物车实现详细代码

ASP.NET 2.0 中收集的小功能点(转)

ASP.Net 分页控件源码

用ASP.NET做的个性化的邮件发送系统

ASP.NET 2.0中的页面输出缓存

在ASP.NET中重写URL的代码

学习使用ASP.NET 2.0的本地化

ASP.NET缓存方法分析和实践示例代码第1/2页

精品推荐
分类导航