`
阅读更多

如果服务器上安装了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>

 

后台代码:

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());
        }

    }

}

 

服务器端目录:

客户端解压缩的变通方法:

分享到:
评论

相关推荐

    asp.net调用RAR实现文件压缩与解压缩图文代码

    如果服务器上安装了RAR程序,那么asp.net可以调用RAR实现文件压缩与解压缩。 不过要注意的是,由于Web程序不能直接调用客户端的程序(除非用ActiveX,ActiveX几乎被废弃),所以如果要想实现让用户把本地文件用网页...

    ASP.NET利用RAR实现文件压缩解压缩

    ASP.NET 是一种基于 .NET Framework 的 Web 应用开发平台...总之,在ASP.NET中利用WinRAR进行文件压缩解压缩是一种可行的方法,但可能涉及到安全性和性能的问题。开发时应权衡这些因素,选择最适合项目需求的实现方式。

    asp.net 解压缩文件

    在ASP.NET中,解压缩RAR文件的步骤可能如下: 1. 检查服务器是否已安装并配置好RAR程序。 2. 使用`System.Diagnostics.Process`类创建一个新的进程实例。 3. 设置`ProcessStartInfo`,包括RAR程序的路径,以及"e"...

    asp.net中调用winrar实现压缩解压缩的代码

    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

    总的来说,ASP.NET MVC 文件管理功能Demo展示了如何利用现代Web技术实现高效、用户友好的文件管理系统。开发者可以在此基础上进行扩展,例如添加用户身份验证、权限控制、多用户协作等功能,以满足更复杂的业务需求...

    asp.NET中实现文件的压缩和解压(3种方式)

    ASP.NET 是一个强大的 web 应用程序开发框架,它提供了丰富的功能来处理各种任务,包括文件的压缩和解压。本文将详细介绍如何在 ASP.NET 中使用三种不同的方法来实现这一功能。 1. 使用 System.IO.Packaging ...

    Asp.net在线压缩解压简单实例

    这个实例的核心在于它能够动态地对服务器上的文件进行压缩或解压缩,这对于数据传输和存储优化具有重要意义。 在进行Asp.net的在线压缩和解压操作前,首要条件是服务器上已经安装了支持RAR格式的软件,例如WinRAR,...

    asp.net 在线解压rar

    这个ASP.NET程序通过调用系统级别的RAR解压缩工具来实现这一功能,极大地提升了用户体验,尤其是在处理大文件或者需要快速访问解压内容时。 首先,我们来详细了解一下如何在ASP.NET中实现在线解压RAR的功能。ASP...

    ASP.NET CORE使用WebUploader对大文件分片上传,并通过ASP.NET CORE SignalR实时反馈后台处.docx

    在 ASP.NET CORE 项目中,我们需要引入 SharpZipLib 库来处理 ZIP 压缩文件的解压缩。在 `appsettings.json` 文件中,我们可以配置上传文件的保存路径、临时目录以及允许的文件类型。 ```json { "FileUpload": { ...

    asp.net文件管理系统源码

    4. **压缩与解压功能**:该系统具备对文件和文件夹的压缩与解压能力,这通常需要调用第三方库,如SharpZipLib或DotNetZip,来实现ZIP或RAR格式的压缩与解压缩。在ASP.NET中,可以通过调用这些库的API,结合服务器端...

    asp.net 压缩解压控件

    这种控件通常提供API接口,方便在网页代码中集成,以实现文件的上传、下载以及压缩/解压缩功能。 在.NET框架中,文件压缩和解压缩可以借助System.IO.Compression命名空间中的类来实现,如GZipStream和DeflateStream...

    asp.net网站RAR打包程序,网站在线备份恢复(Rar)

    3. **在线恢复**:当需要恢复网站到先前的某个状态时,此功能允许用户选择已存储的RAR备份文件进行解压缩。同样,这个过程也是通过Web界面完成,大大简化了恢复流程。 4. **备份下载**:除了在服务器上保存备份文件...

    asp在线压缩组件 asp rar压缩

    这种组件允许开发者在服务器端对文件进行RAR压缩,从而实现数据的高效存储和快速传输。RAR是一种流行的压缩格式,它能提供比ZIP更高的压缩率,尤其是在处理大文件时。 在ASP环境中使用RAR压缩组件,开发者可以实现...

    文件压缩解压缩

    在 ASP.NET 中,可以利用 RAR 实现服务器端的文件压缩和解压缩。 在 ASP.NET 应用程序中调用 RAR 工具,通常需要借助操作系统提供的注册表信息来找到 RAR 的可执行路径。在示例代码中,通过访问注册表的 `...

    安装ASP.NET AJAX和AjaxControlToolkit.rar(详细具体)

    2. 解压缩文件,找到相应的dll文件(如AjaxControlToolkit.dll)。 3. 将dll文件添加到你的ASP.NET项目的引用中。 4. 在Web.config文件中配置ToolkitScriptManager,替代默认的ScriptManager,以便使用...

    asp.net 文件夹多图片上传(rar打包上传) demo

    对于RAR文件,可能需要解压缩,然后再遍历解压后的文件夹,逐个处理图片。 在处理图片时,可能会涉及到一些常见的任务,比如检查图片类型、调整尺寸、质量优化等。这通常通过Image类或第三方库如ImageMagick来完成...

    ASP.NET中FCKEditor配置教程

    将下载的zip文件解压缩,然后将`fckeditor`文件夹复制到你的ASP.NET项目的根目录下。 2. **添加FCKeditor .NET组件**: 从FCKeditor.Net_2.x.x版本的rar文件中提取`FredCK.FCKeditorV2.dll`,并将其放入项目文件夹...

    实现文件的解压和压缩

    在IT行业中,文件的压缩和...综上所述,使用ASP.NET实现文件的压缩和解压功能主要涉及System.IO.Compression命名空间,以及针对RAR格式的第三方库。通过合理的编程实践,可以有效地管理和处理Web应用程序中的文件数据。

Global site tag (gtag.js) - Google Analytics