`
leonardleonard
  • 浏览: 801435 次
社区版块
存档分类
最新评论

asp.net利用RAR实现文件压缩解压缩【月儿原创】

阅读更多

asp.net利用RAR实现文件压缩解压缩

作者:清清月儿

主页:http://blog.csdn.net/21aspnet/           时间:2007.6.13

如果服务器上安装了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教程 rar压缩文件

    这个压缩文件包含的“中国IT认证实验室学习下载频道.txt”可能提供了更多学习资源和相关信息,而“十天学会ASP.NET教程”应是详细的教程文档,涵盖了上述所有知识点。通过系统学习,你可以逐步掌握ASP.NET开发技能,...

    asp.net在线压缩/解压缩

    2. **压缩技术**:在ASP.NET中,可以使用`System.IO.Compression`命名空间中的类来实现文件和目录的压缩。例如,`GZipStream`和`DeflateStream`用于GZIP和DEFLATE压缩算法,而`ZipArchive`类则是用来处理ZIP文件的...

    asp.net 解压缩文件

    总结来说,ASP.NET虽然不直接支持RAR格式,但可以通过调用外部程序或使用第三方库来实现RAR文件的压缩和解压缩功能。开发者应根据项目需求、服务器环境和性能要求选择合适的方法。在实现过程中,要特别关注安全性和...

    在asp.net中动态压缩文件的功能实现。

    本知识点主要探讨如何在ASP.NET中实现这个功能,特别是利用WinRAR命令行工具来完成文件的压缩。 首先,我们需要在服务器上安装WinRAR程序,因为ASP.NET本身并不内置文件压缩功能,而WinRAR提供了命令行接口(Rar....

    asp.net利用ftp上传文件实现示例代码

    本文将深入探讨如何使用ASP.NET通过FTP协议实现文件上传,并提供一个示例代码片段,帮助解决传统ASP.NET文件上传可能出现的超时和大小限制问题。 FTP上传在ASP.NET中的实现主要依赖于`System.Net`命名空间下的`...

    十天学会ASP.NET教程十天学会ASP.NET教程.rar

    ASP.NET是微软公司开发的一种用于构建Web应用程序的框架,它基于.NET Framework,为开发者提供了丰富的功能和工具,简化了Web应用的开发过程。这“十天学会ASP.NET教程”显然是一个旨在帮助初学者快速掌握ASP.NET...

    asp.net+Ajax实现Excel文件导出

    本篇文章将详细讲解如何利用ASP.NET与Ajax技术实现在Web应用中导出Excel文件。 首先,ASP.NET是Microsoft开发的一个用于构建动态网站、Web应用程序和服务的框架。它基于.NET Framework,提供了丰富的服务器控件、...

    【ASP.NET编程知识】asp.NET中实现文件的压缩和解压(3种方式).docx

    ASP.NET 中实现文件的压缩和解压(3 种方式) ASP.NET 中实现文件的压缩和解压是许多开发者常见的需求,今天我们将讨论三种实现方式:使用 System.IO.Packaging、使用第三方类库、使用 System.IO.Compression 命名...

    asp.net 播放mp4视频文件代码

    在这个场景中,我们关注的是如何在ASP.NET中实现MP4视频文件的播放。MP4是一种常用的视频格式,支持高质量的视频流,适用于网页播放。 首先,要在ASP.NET网页上播放MP4视频,我们需要在HTML中使用`&lt;video&gt;`标签。这...

    VB.NET使用ZipPackage实现ZIP文件压缩解压缩示例

    "ZipDemo.aspx.htm"可能是一个HTML版本的ASP.NET页面,"Zip.zip"是待解压缩的ZIP文件,而"ZipDemo.aspx_files"通常表示一个包含ASP.NET页面相关资源(如CSS、JavaScript或图片)的目录。在处理这些文件时,你需要...

    ASP.NET Web API 接收文件上传

    本文将深入探讨如何在ASP.NET Web API中实现文件上传功能,并涉及MIME多部分类型。 首先,让我们了解MIME(Multipurpose Internet Mail Extensions)多部分类型。MIME是一种标准,用于定义电子邮件和其他网络传输的...

    asp.net C# 利用FTP 远程下载文件

    总的来说,通过利用C#的`System.Net`命名空间,你可以方便地在ASP.NET环境中实现FTP远程文件下载功能,为用户提供高效、安全的文件获取服务。在实际开发中,还需要考虑错误处理、性能优化以及安全性等问题,确保应用...

    【ASP.NET编程知识】ASP.NET Core中预压缩静态文件的方法步骤.docx

    ASP.NET Core 中预压缩静态文件的方法步骤 ASP.NET Core 中预压缩静态文件的方法步骤是指在 ASP.NET Core 应用程序中,如何将静态文件预压缩,以减少网络带宽和服务器 CPU 负载。预压缩静态文件可以在服务器端完成...

    ASP.NET(C#) 图片压缩类

    本文将详细介绍一个在ASP.NET(使用C#语言)环境下实现的图片压缩类,帮助开发者掌握如何有效地减小图片文件大小而不显著牺牲图像质量。 #### 核心功能:图片压缩方法 该图片压缩类提供了多种压缩图片的方法,包括...

    ASP.NET在线压缩和解压缩

    #### 描述:ASP.NET实现文件的在线压缩和解压缩 描述部分进一步说明了这一功能的具体应用场景,即在Web应用程序中集成文件压缩与解压缩的功能,使用户能够直接在浏览器上对文件进行压缩或解压缩操作,提高了用户...

    ASP.NET实现文件的在线压缩和解压缩

    我们经常会遇到批量上传的问题,...以前的技术一般采用ActiveX等方式,这里笔者采用SharpZlib来实现,听说VS2005已有压缩和解压缩的解决方案,笔者还没有时间用VS2005,所以就只好使用VS2003 + SharpZlib来解决问题了。

    基于ASP.net的企业文件管理系统源码.zip

    对于学习者或开发者来说,这是一个极好的资源,可以深入理解ASP.NET如何应用于企业级文件管理系统的实现,以及如何利用C#(ASP.NET的主要编程语言)来设计和实现文件管理功能。 【标签】:“毕业设计 C# Java PHP”...

Global site tag (gtag.js) - Google Analytics