用ASP在线压缩与解压缩

2013 年 4 月 7 日5000

正文

用ASP在线压缩与解压缩

出处:中国数据时间:2011-3-7 11:41:00 人气:

摘要:在备份或者上传下载中,难免会用到压缩解压缩的操作,方便与上传和下载的速度,也节省了流量传输!

中国数据是国内排名第二位的域名主机服务商!

支持近百种域名后缀注册,.CN/.中国个人域名注册20元/年!

云主机免费备案,并赠送1个月免费使用!

专业的PHP空间做网店论坛,送数据库!

千套模板做网站,最低只要480元!

办公OA系统,助您高效办公!

在上传与下载文件的过程中,传输时间是关键,这就要求有较快的传输速度。在传输速度固定不变或是上下变动不大的情况下,尽量减小传输文件的体积,是一个

可行的办法:上传文件的时候,先将要上传的文件用WINRAR压缩,上传成功后在网站内通过程序实现解压缩;下载文件的时候,先将要下载的文件在网站内通

过程序实现压缩然后再下载

详细的winrar命令参考:http://http://www.zjjv.com///article/15/201137113212.shtml

程序代码中的关键之处就是用Server.CreateObject("Wscript.Shell")来执行CMD.EXE,CMD.EXE运行RAR.EXE通过WINRAR的命令来执行解压缩文件与压缩文件的。所以要使用此功能,需要开启相关组件!

三、程序清单

asp压缩代码

ZIP.ASP程序清单

<%

'main文件夹中包含cmd.exe rar.exe 例如:要压缩的文件(*.mdb)

'压缩后的存放目录为main\data.rar

on error resume next

unzip_path=Server.mappath("main")&"\"

Set WshShell = server.CreateObject("Wscript.Shell")

IsSuccess = WshShell.Run ("winrar a "&unzip_path&"data

"&unzip_path&"*.mdb",1, False)

'WinRAR <命令> -<开关1> -<开关N> <压缩文件> <文件...> <@列表文件...>

<解压路径\>

'命令: A - 添加到压缩文件中

if IsSuccess = 0 Then

Response.write " 命令成功执行!"'asp压缩成功提示

else

Response.write " 命令执行失败!权限不够或者该程序无法运行"'asp压缩权限报错

end if

if err.number <> 0 then

Response.Write "<p>错误号码:" & Err.number 'asp压缩报错

Response.Write "<p>原因:" & Err.description'asp压缩报错

Response.Write "<p>错误来源:" & Err.Source'asp压缩报错

Response.Write

end if

%>

asp解压代码

UNZIP.ASP程序清单:

<%

'main文件夹中包含cmd.exe rar.exe 要解压缩的文件(*.rar)

'解压缩后的存放目录为main

on error resume next

unzip_path=Server.mappath("main")&"\"

Set WshShell = server.CreateObject("Wscript.Shell")

IsSuccess = WshShell.Run ("winrar x -r -o+ "&unzip_path&"*.rar

"&unzip_path&"",1, False)

'WinRAR <命令> -<开关1> -<开关N> <压缩文件> <文件...> <@列表文件...>

<解压路径\>

'命令: X - 从压缩文件中全路径解压文件

'开关: -R - 连同子文件夹

'开关: -O+ - 覆盖已经存在的文件

'开关: -O- - 不覆盖已经存在的文件

if IsSuccess = 0 Then

Response.write " 命令成功执行!" 'asp解压成功提示

else

Response.write " 命令执行失败!权限不够或者该程序无法运行"'asp解压权限报错

end if

if err.number <> 0 then

Response.Write "<p>错误号码:" & Err.number'asp解压报错

Response.Write "<p>原因:" & Err.description'asp解压报错

Response.Write "<p>错误来源:" & Err.Source'asp解压报错

Response.Write

end if

%>

 

 本文通过使用RAR.EXE和

CMD.EXE这两个文件,在ASP编程中实现在线压缩与解压缩网站中的文件的功能。实现方法简单,程序代码少,可供实用编程时借鉴使用。尤其是在拥有自

己的服务器的情况下极其实用和方便。以上程序在Windows2000Sever及IIS5.0下运行通过。

阅读本文的人还阅读了:

·asp运算符介绍

·asp创建access数据库文件

·ASP中几种分页显示的比较

·修改asp上传大小限制

·ASP中常用FSO操作文件代码

·ASP中ServerVariables集合详细参数与说明

·asp文本框换行显示代码

·“ASP 0104:80004005”不允许操作处理办法

·asp中相对路径转换为绝对路径函数

·ASP隐藏下载地址及防盗代码

0 0