[DNN学习所得]让IE也能实现解压缩功能(提供演示源码下载)
在看DNN时发现了一个很酷的功能:能通过IE浏览器实现对Zip文件的压缩和生成Zip文件文件压缩包的功能。在仔细看过程序以后发现它是调用的SharpZipLib.dll类库中的内容实现的压缩与解压功能。上网查了一下SharpZipLib,发现它居然是开源的,在http://www.icsharpcode.net网站上有下。在网站里关于SharpZipLib的源文件和调用演示包括帮助文档都有下,不过当然全是E文的。(真不知在中国有哪家公司在做.net的开源,真的十分想看国产的优秀开源项目)
在SharpZipLib中实现解压的方法(演示代码):
using System;
using System.Text;
using System.Collections;
using System.IO;
using System.Diagnostics;
using System.Runtime.Serialization.Formatters.Binary;
using System.Data;
using ICSharpCode.SharpZipLib.BZip2;
using ICSharpCode.SharpZipLib.Zip;
using ICSharpCode.SharpZipLib.Zip.Compression;
using ICSharpCode.SharpZipLib.Zip.Compression.Streams;
using ICSharpCode.SharpZipLib.GZip;
class MainClass
{
// 在控制命令行下输入要解压的Zip文件名
public static void Main(string[] args)
{
// 创建读取Zip文件对象
ZipInputStream s = new ZipInputStream(File.OpenRead(args[0]));
// Zip文件中的每一个文件
ZipEntry theEntry;
// 循环读取Zip文件中的每一个文件
while ((theEntry = s.GetNextEntry()) != null) {
Console.WriteLine(theEntry.Name);
string directoryName = Path.GetDirectoryName(theEntry.Name);
string fileName = Path.GetFileName(theEntry.Name);
// create directory
Directory.CreateDirectory(directoryName);
if (fileName != String.Empty) {
// 解压文件
FileStream streamWriter = File.Create(theEntr
[1] [2] [3] [4] 下一页
进入问吧