zoukankan      html  css  js  c++  java
  • 【摘录】Asp.net实现在线压缩与解压

    首先加入命名空间

    using Microsoft.Win32;
    using System.Runtime.InteropServices;
    using System.Diagnostics;

    实现压缩方法:


    //压缩
            String strRar;
            RegistryKey rkReg;
            Object obj;
            String strInfo;
            ProcessStartInfo psiInfo;
            Process pProcess;
            
    try
            {
                rkReg 
    = Registry.ClassesRoot.OpenSubKey(@"Applications\WinRAR.exe\Shell\Open\Command");
                obj 
    = rkReg.GetValue("");
                strRar 
    = obj.ToString();
                rkReg.Close();
                strRar 
    = strRar.Substring(1, strRar.Length - 7);
                strInfo 
    = "a  -r  -ep1 test.rar " + lblTree.Text + @"rar/test1.txt " + lblTree.Text + @"rar";//这里为rar的压缩命令格式(也可以自行扩展)
                psiInfo = new ProcessStartInfo();
                psiInfo.FileName 
    = strRar;
                psiInfo.Arguments 
    = strInfo;
                psiInfo.WindowStyle 
    = ProcessWindowStyle.Hidden;
                psiInfo.WorkingDirectory 
    = lblTree.Text + "rar"; ;//获取或设置要启动的进程的初始目录。
                pProcess = new Process();
                pProcess.StartInfo 
    = psiInfo;
                pProcess.Start();
                Response.Write(
    "<font color=red>压缩成功</font>");
            }
            
    catch (Exception ex)
            {
                Response.Write(ex.ToString());
            }

    实现解压方法:

    //解压缩
            String strRar;
            RegistryKey rkReg;
            Object obj;
            String strInfo;
            ProcessStartInfo psiInfo;
            Process pProcess;
            
    try
            {
                rkReg 
    = Registry.ClassesRoot.OpenSubKey(@"Applications\WinRar.exe\Shell\Open\Command");
                obj 
    = rkReg.GetValue("");
                strRar 
    = obj.ToString();
                rkReg.Close();
                strRar 
    = strRar.Substring(1, strRar.Length - 7);
                strInfo 
    = " X " + lblTree.Text + @"rar/test.rar " + " " + lblTree.Text + @"unRar";
                psiInfo 
    = new ProcessStartInfo();
                psiInfo.FileName 
    = strRar;
                psiInfo.Arguments 
    = strInfo;
                psiInfo.WindowStyle 
    = ProcessWindowStyle.Hidden;
                pProcess 
    = new Process();
                pProcess.StartInfo 
    = psiInfo;
                pProcess.Start();
                Response.Write(
    "<font color=red>解压缩成功</font>");
            }
            
    catch (Exception ex)
            {
                Response.Write(ex.ToString());
            }
  • 相关阅读:
    6种GET和POST请求发送方法
    微信公众平台开发框架推荐
    PHPExcel内存泄漏问题
    7个鲜为人知却超实用的PHP函数
    java调用C程序
    php AES加密 对应Java SHA1PRNG方式加密
    yii插入数据库防并发
    PHPUnit测试
    yii2源码学习笔记(二十)
    yii2源码学习笔记(十九)
  • 原文地址:https://www.cnblogs.com/zwffff/p/1441535.html
Copyright © 2011-2022 走看看