asp.net上传RAR文件自动解压

本文介绍了一个ASP.NET Web窗体应用程序中实现文件上传及RAR文件解压的功能。具体步骤包括用户选择文件并上传到服务器指定目录,然后通过调用WinRAR命令行工具来解压RAR文件。

using System;
using System.IO;
using System.Diagnostics;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web.Security;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace WebLayer
{
/**//// <summary>
/// WebForm1 的摘要说明。
/// </summary>
public class WebForm1 : System.Web.UI.Page
{
   protected System.Web.UI.WebControls.Button Button1;
   protected System.Web.UI.HtmlControls.HtmlInputFile myfile;

   private void Page_Load(object sender, System.EventArgs e)
   {
    // 在此处放置用户代码以初始化页面
   }

   Web 窗体设计器生成的代码#region Web 窗体设计器生成的代码
   override protected void OnInit(EventArgs e)
   {
    //
    // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
    //
    InitializeComponent();
    base.OnInit(e);
   }
  
   /**//// <summary>
   /// 设计器支持所需的方法 - 不要使用代码编辑器修改
   /// 此方法的内容。
   /// </summary>
   private void InitializeComponent()
   {    
    this.Button1.Click += new System.EventHandler(this.Button1_Click);
    this.Load += new System.EventHandler(this.Page_Load);

   }
   #endregion

   private void Button1_Click(object sender, System.EventArgs e)
   {
    string path = @"C:/"+myfile.PostedFile.FileName.Substring(myfile.PostedFile.FileName.LastIndexOf("//"));
    myfile.PostedFile.SaveAs(path);
    Response.Write("文件上传成功:"+path);
    //Response.End();
    // 在此处放置用户代码以初始化页面  
    Process p = new Process();   
    p.StartInfo.UseShellExecute = false;   
    p.StartInfo.RedirectStandardInput = true;   
    p.StartInfo.RedirectStandardOutput = true;   
    p.StartInfo.RedirectStandardError = true;   
    p.StartInfo.CreateNoWindow = true;  
    p.StartInfo.FileName = "cmd.exe";   
    p.Close();   
    //解压Rar文件  
    string ServerDir=@"C:/Program Files/WinRAR";//rar路径  
    System.Diagnostics.Process Process1=new Process();  
    Process1.StartInfo.FileName=ServerDir+"//Rar.exe";  
    Directory.CreateDirectory(path+".files"); //创建解压文件夹  
    Process1.StartInfo.Arguments=" x -inul -y "+path+" "+path+".files";  
    Process1.Start();//解压开始  
    while(!Process1.HasExited)            //等待解压的完成  
    {  
    }  
    //File.Delete(path);//删除rar文件  
   }
}
}

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值