asp.net C#中使用DotNetZip解压缩文件例子

作者:袖梨 2022-06-25

DotNetZip 下载地址:http://dotnetzip.codeplex.com/

压缩:

 代码如下 复制代码

//定义文件路径
string filename = @"d:/test.rar";
 
using (ZipFile zip = new ZipFile())
 
{
    zip.AddFile(@"C:/text.txt", "txt");//将text文件存放在txt文件夹
    zip.AddFile(@"C:/ReadMe.txt");//将ReadMe文件存放于更目录
    zip.AddFile(@"C:/test.jpg", "images");//将test文件存放在images文件夹
}
  

解压:


using (ZipFile zip = new ZipFile(filename))
{
    zip.ExtractAll("d:\\test", ExtractExistingFileAction.OverwriteSilently);
}

中文字符不显示的问题

 代码如下 复制代码


/////////////////////////替换内容
string str2 = System.Text.Encoding.GetEncoding("GB2312").GetString(buf, start, maxlength);
return str2;

////////////////////////被替换内容
//int i;
//char[] c = new char[maxlength];
//for (i = 0; (i < maxlength) && (i < buf.Length) && (buf[i] != 0); i++)
//{
//    c[i] = (char)buf[i]; // System.BitConverter.ToChar(buf, start+i*2);
//}
//string s = new System.String(c, 0, i);
//return s;
////////////////////////

这个方法大意是,将字节数组逐个转换为字符数组,将汉字的编码拆成两个字符,这很明显会造成乱码,既然编码采用GetBytes,那么解码也就用反的,GetString就行了,编译运行,大功告成

相关文章

精彩推荐