- 浏览: 35145 次
- 性别:
- 来自: 成都
文章分类
最新评论
-
50050192:
扯蛋,误人
[原]JavaSocket实现广播聊天室 -
Dxx23:
受用了!
电子书分享下,谢谢!
[原]Oracle中列自增的方法 -
yulongxiang:
学习了!!!
Ajax的实现原理(asp.net ajax读书笔记)
asp.net利用RAR实现文件压缩解压缩[转载]
如果服务器上安装了RAR程序,那么asp.net可以调用RAR实现文件压缩与解压缩。
不过要注意的是,由于Web程序不能直接调用客户端的程序(除非用ActiveX,ActiveX几乎被废弃),所以如果要想实现让用户把本地文件用网页解压缩只有把文件上传到服务器上再调用服务器上的RAR压缩,同理要解压缩本地的RAR文件可以把文件上传到服务器解压再拿回来。
本文讲怎么在服务器端的目录解压缩文件!
效果图:
<%...@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>服务器端解压缩 清清月儿 http://blog.csdn.net/21aspnet/</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="压缩" />
<asp:Button ID="Button2" runat="server" OnClick="Button2_Click" Text="解压缩" /></div>
</form>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>服务器端解压缩 清清月儿 http://blog.csdn.net/21aspnet/</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="压缩" />
<asp:Button ID="Button2" runat="server" OnClick="Button2_Click" Text="解压缩" /></div>
</form>
</body>
</html>
后台代码:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.IO;
using System.Runtime.InteropServices;
using Microsoft.Win32;
using System.Diagnostics;
public partial class _Default : System.Web.UI.Page
...{
protected void Page_Load(object sender, EventArgs e)
...{
//清清月儿 http://blog.csdn.net/21aspnet/
}
protected void Button1_Click(object sender, EventArgs e)
...{
//压缩
String the_rar;
RegistryKey the_Reg;
Object the_Obj;
String the_Info;
ProcessStartInfo the_StartInfo;
Process the_Process;
try
...{
the_Reg = Registry.ClassesRoot.OpenSubKey("Applications\WinRAR.exe\Shell\Open\Command");
the_Obj = the_Reg.GetValue("");
the_rar = the_Obj.ToString();
the_Reg.Close();
the_rar = the_rar.Substring(1, the_rar.Length - 7);
the_Info = " a " + " 1.rar " + " " + "C:\1\1.txt";
the_StartInfo = new ProcessStartInfo();
the_StartInfo.FileName = the_rar;
the_StartInfo.Arguments = the_Info;
the_StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
the_StartInfo.WorkingDirectory = "C:\1";//获取或设置要启动的进程的初始目录。
the_Process = new Process();
the_Process.StartInfo = the_StartInfo;
the_Process.Start();
Response.Write("压缩成功");
}
catch (Exception ex)
...{
Response.Write(ex.ToString());
}
}
protected void Button2_Click(object sender, EventArgs e)
...{
//解压缩
String the_rar;
RegistryKey the_Reg;
Object the_Obj;
String the_Info;
ProcessStartInfo the_StartInfo;
Process the_Process;
try
...{
the_Reg = Registry.ClassesRoot.OpenSubKey("Applications\WinRar.exe\Shell\Open\Command");
the_Obj = the_Reg.GetValue("");
the_rar = the_Obj.ToString();
the_Reg.Close();
the_rar = the_rar.Substring(1, the_rar.Length - 7);
the_Info = " X " + " 1.rar " + " " + "C:\1";
the_StartInfo = new ProcessStartInfo();
the_StartInfo.FileName = the_rar;
the_StartInfo.Arguments = the_Info;
the_StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
the_Process = new Process();
the_Process.StartInfo = the_StartInfo;
the_Process.Start();
Response.Write("解压缩成功");
}
catch (Exception ex)
...{
Response.Write(ex.ToString());
}
}
}
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.IO;
using System.Runtime.InteropServices;
using Microsoft.Win32;
using System.Diagnostics;
public partial class _Default : System.Web.UI.Page
...{
protected void Page_Load(object sender, EventArgs e)
...{
//清清月儿 http://blog.csdn.net/21aspnet/
}
protected void Button1_Click(object sender, EventArgs e)
...{
//压缩
String the_rar;
RegistryKey the_Reg;
Object the_Obj;
String the_Info;
ProcessStartInfo the_StartInfo;
Process the_Process;
try
...{
the_Reg = Registry.ClassesRoot.OpenSubKey("Applications\WinRAR.exe\Shell\Open\Command");
the_Obj = the_Reg.GetValue("");
the_rar = the_Obj.ToString();
the_Reg.Close();
the_rar = the_rar.Substring(1, the_rar.Length - 7);
the_Info = " a " + " 1.rar " + " " + "C:\1\1.txt";
the_StartInfo = new ProcessStartInfo();
the_StartInfo.FileName = the_rar;
the_StartInfo.Arguments = the_Info;
the_StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
the_StartInfo.WorkingDirectory = "C:\1";//获取或设置要启动的进程的初始目录。
the_Process = new Process();
the_Process.StartInfo = the_StartInfo;
the_Process.Start();
Response.Write("压缩成功");
}
catch (Exception ex)
...{
Response.Write(ex.ToString());
}
}
protected void Button2_Click(object sender, EventArgs e)
...{
//解压缩
String the_rar;
RegistryKey the_Reg;
Object the_Obj;
String the_Info;
ProcessStartInfo the_StartInfo;
Process the_Process;
try
...{
the_Reg = Registry.ClassesRoot.OpenSubKey("Applications\WinRar.exe\Shell\Open\Command");
the_Obj = the_Reg.GetValue("");
the_rar = the_Obj.ToString();
the_Reg.Close();
the_rar = the_rar.Substring(1, the_rar.Length - 7);
the_Info = " X " + " 1.rar " + " " + "C:\1";
the_StartInfo = new ProcessStartInfo();
the_StartInfo.FileName = the_rar;
the_StartInfo.Arguments = the_Info;
the_StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
the_Process = new Process();
the_Process.StartInfo = the_StartInfo;
the_Process.Start();
Response.Write("解压缩成功");
}
catch (Exception ex)
...{
Response.Write(ex.ToString());
}
}
}
服务器端目录:
客户端解压缩的变通方法:
发表评论
-
用UpDataPanel实现同步提交显示数据
2007-06-08 12:55 731这是我来博客园发的第一篇文章做这个的灵感来自TerryLee的 ... -
Ajax的实现原理(asp.net ajax读书笔记)
2007-06-08 15:07 1218首次加载方式:与传统web应用程序相同。首先用户在游览器输入U ... -
ASP.net自己常用的一些代码[新同学请进]
2007-06-09 01:46 7251.如何在Reapter控件里显示数据库数据?页面部分代码: ... -
SQL Server 2005 For Developers
2007-06-09 18:33 652很多朋友最近在找SQL2005开发版下载的地址,苦于BT下载无 ... -
[原创]Asp.net入门-网络采购系统(1)
2007-06-10 16:14 649大家好,首先欢迎您访问我的博客,在这儿,您如果是一名Asp.n ... -
用Jmail实现邮件发送源代码
2007-06-12 10:53 810以下代码经过测试,没有问题的,可以实现邮件发送。JMail下载 ... -
利用Jmail接收邮件
2007-06-16 00:06 1405/**//// <summary>/// 利用Jm ... -
C#基础概念二十五问[转载]
2007-06-16 10:31 716当初学 C# 时是找个人大概问了一下数据类型和分支语句就开始做 ... -
C# 开发和使用中的23个技巧
2007-06-19 20:39 6601.怎样定制VC#DataGrid列标题? DataGrid ... -
数据库开发者常犯的十大错误,你有吗?
2007-06-21 00:03 787尽管软件发展中的热点技术层出不穷,不断地变化,有一些东西却一 ... -
Net 是未来的趋势, 为什么? [转]
2007-06-23 00:41 549Net姗姗来迟了.但是终于 ... -
使用ADO.NET和C#以编程方式创建 SQL Server 数据库
2007-09-28 15:04 895//Create Button on Form //using ... -
使用ISAPI_Rewrite对asp.net实现URL重写伪静态[转]
2008-04-19 01:08 1009ISAPI_Rewrite利用IIS的ISAPI实现URL重写 ... -
利用Mircosoft URLRewriter.dll实现页面伪静态[原]
2008-04-20 01:40 1631昨天,转贴了一篇利用ISAPI筛选器来实现URL伪静态的文章, ... -
[原]利用Wildcard ISAPI Mapping隐藏扩展名
2008-04-23 17:43 771Wildcard ISAPI Mapping,是IIS6中的一 ... -
[转]Log4Net五步走
2008-04-30 02:27 919本文不是教你全面了解log4net,本文只是希望教会你按步就班 ...
相关推荐
如果服务器上安装了RAR程序,那么asp.net可以调用RAR实现文件压缩与解压缩。 不过要注意的是,由于Web程序不能直接调用客户端的程序(除非用ActiveX,ActiveX几乎被废弃),所以如果要想实现让用户把本地文件用网页...
ASP.NET 是一种基于 .NET Framework 的 Web 应用开发平台...总之,在ASP.NET中利用WinRAR进行文件压缩解压缩是一种可行的方法,但可能涉及到安全性和性能的问题。开发时应权衡这些因素,选择最适合项目需求的实现方式。
在ASP.NET中,解压缩RAR文件的步骤可能如下: 1. 检查服务器是否已安装并配置好RAR程序。 2. 使用`System.Diagnostics.Process`类创建一个新的进程实例。 3. 设置`ProcessStartInfo`,包括RAR程序的路径,以及"e"...
asp.net解压缩rar文件调用示例:unrar(“e:/www.jb51.net.rar”, “e:/”); 代码如下: using System; using System.Collections.Generic; using System.Text; using System.Diagnostics; namespace BLL { public ...
总的来说,ASP.NET MVC 文件管理功能Demo展示了如何利用现代Web技术实现高效、用户友好的文件管理系统。开发者可以在此基础上进行扩展,例如添加用户身份验证、权限控制、多用户协作等功能,以满足更复杂的业务需求...
ASP.NET 是一个强大的 web 应用程序开发框架,它提供了丰富的功能来处理各种任务,包括文件的压缩和解压。本文将详细介绍如何在 ASP.NET 中使用三种不同的方法来实现这一功能。 1. 使用 System.IO.Packaging ...
这个实例的核心在于它能够动态地对服务器上的文件进行压缩或解压缩,这对于数据传输和存储优化具有重要意义。 在进行Asp.net的在线压缩和解压操作前,首要条件是服务器上已经安装了支持RAR格式的软件,例如WinRAR,...
这个ASP.NET程序通过调用系统级别的RAR解压缩工具来实现这一功能,极大地提升了用户体验,尤其是在处理大文件或者需要快速访问解压内容时。 首先,我们来详细了解一下如何在ASP.NET中实现在线解压RAR的功能。ASP...
在 ASP.NET CORE 项目中,我们需要引入 SharpZipLib 库来处理 ZIP 压缩文件的解压缩。在 `appsettings.json` 文件中,我们可以配置上传文件的保存路径、临时目录以及允许的文件类型。 ```json { "FileUpload": { ...
4. **压缩与解压功能**:该系统具备对文件和文件夹的压缩与解压能力,这通常需要调用第三方库,如SharpZipLib或DotNetZip,来实现ZIP或RAR格式的压缩与解压缩。在ASP.NET中,可以通过调用这些库的API,结合服务器端...
这种控件通常提供API接口,方便在网页代码中集成,以实现文件的上传、下载以及压缩/解压缩功能。 在.NET框架中,文件压缩和解压缩可以借助System.IO.Compression命名空间中的类来实现,如GZipStream和DeflateStream...
3. **在线恢复**:当需要恢复网站到先前的某个状态时,此功能允许用户选择已存储的RAR备份文件进行解压缩。同样,这个过程也是通过Web界面完成,大大简化了恢复流程。 4. **备份下载**:除了在服务器上保存备份文件...
这种组件允许开发者在服务器端对文件进行RAR压缩,从而实现数据的高效存储和快速传输。RAR是一种流行的压缩格式,它能提供比ZIP更高的压缩率,尤其是在处理大文件时。 在ASP环境中使用RAR压缩组件,开发者可以实现...
在 ASP.NET 中,可以利用 RAR 实现服务器端的文件压缩和解压缩。 在 ASP.NET 应用程序中调用 RAR 工具,通常需要借助操作系统提供的注册表信息来找到 RAR 的可执行路径。在示例代码中,通过访问注册表的 `...
2. 解压缩文件,找到相应的dll文件(如AjaxControlToolkit.dll)。 3. 将dll文件添加到你的ASP.NET项目的引用中。 4. 在Web.config文件中配置ToolkitScriptManager,替代默认的ScriptManager,以便使用...
对于RAR文件,可能需要解压缩,然后再遍历解压后的文件夹,逐个处理图片。 在处理图片时,可能会涉及到一些常见的任务,比如检查图片类型、调整尺寸、质量优化等。这通常通过Image类或第三方库如ImageMagick来完成...
将下载的zip文件解压缩,然后将`fckeditor`文件夹复制到你的ASP.NET项目的根目录下。 2. **添加FCKeditor .NET组件**: 从FCKeditor.Net_2.x.x版本的rar文件中提取`FredCK.FCKeditorV2.dll`,并将其放入项目文件夹...
在IT行业中,文件的压缩和...综上所述,使用ASP.NET实现文件的压缩和解压功能主要涉及System.IO.Compression命名空间,以及针对RAR格式的第三方库。通过合理的编程实践,可以有效地管理和处理Web应用程序中的文件数据。