请问用RAR命令行参数能不能压缩成ZIP,急在线等待!!!!

guowu118 2003-08-13 10:25:33
谁有好用的压缩控件也行!!!
谢谢!
...全文
1662 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
rainey2000 2003-09-22
  • 打赏
  • 举报
回复
winrar a c:\test.zip c:\config.sys

在第二个参数“c:\test.zip”把扩展名改了就行了!
guowu118 2003-08-14
  • 打赏
  • 举报
回复
谢谢你们,我的意思是用RAR的命令行压缩成ZIP格式的文件,现在我能把它压缩成RAR的文件,但压缩不成ZIP文件格式的文件。
我的需求是把一个文件夹下面的文件压缩成ZIP格式的文件,当然也可以通过压缩控件实现,但找不到好的压缩控件,那位朋友有的话请指点,付费也行。
lihonggen0 2003-08-13
  • 打赏
  • 举报
回复
我们在压缩文件时,最常用的压缩工具为winrar和winzip,笔者在vb编程过程中利用winrar工具来压缩数据库文件,并完成远程传输,十分方便,在此向大家介绍一下。用winzip的方法类似。

  一、shell函数
  shell函数是vb中的内部函数,它负责执行一个可执行文件,返回一个variant(double),如果成功的话,代表这个程序的进程id,若不成功,则会返回0。

  shell的语法:shell(pathname[,windowstyle])。

  pathname 为必需参数。类型为string,它指出了要执行的程序名,以及任何需要的参数或命令行变量,也可以包括路径名。

  windowstyle为可选参数。integer类型,指定在程序运行时窗口的样式。windowstyle有以下这些值。

  常量 值 描述
  vbhide 0 窗口被隐藏,且焦点会移到隐式窗口。
  vbnormalfocus 1 窗口具有焦点,且会还原到它原来的大小和位置。
  vbminimizedfocus 2 窗口会以一个具有焦点的图标来显示(缺省值)。
  vbmaximizedfocus 3 窗口是一个具有焦点的最大化窗口。
  vbnormalnofocus 4 窗口会被还原到最近使用的大小和位置,而当前活动的窗口仍然保持活动。
  vbminimizednofocus 6 窗口会以一个图标来显示,而当前活动的窗口仍然保持活动。

  二、关于winrar的用法
  主要介绍以下如何在winrar中用命令行来压缩和解压缩文件。

  压缩:winrar a [-switches] [files] [@file lists]

  例如你想把try.mdb压缩到c盘下,可以winrar a c:try.rar c:try.mdb

  解压缩:如果带目录解压缩

     winrar x [-switches] [files] [@file lists] [destionation folder]

     如果在当前目录解压缩,即解压缩时不写目录名

     winrar e [-switches] [files] [@file lists] [destionation folder]

  例如你想把try.rar解压缩到c盘下,可以winrar x c:try.rar c:try.mdb

  三、一个例子
  在vb中新建一个工程,在form1中添加两个按钮command1、command2和command3,把他们的caption属性分别设为"压缩文件"、"解压缩文件"和"传递文件"。按command1时把文件try.mdb压缩成try.rar。
private sub command1_click()

  dim rarexe as string ‘winrar执行文件的位置

  dim source as string ‘ 压缩前的原始文件

  dim target as string ‘ 压缩后的目标文件

  dim filestring as string ‘shell指令中的字符串

  dim result as long

   rarexe="c:program fileswinrarwinrar"

  source="c:try.mdb"

  target="c:try.rar"

  filestring = rarexe & " a " & target & " " & source

  result = shell(filestring, vbhide)

  end sub

  解压的过程类似,按command2可以把try.rar解压生成 try.mdb。在执行了上面的压缩过程后,可以删除文件try.mdb,来解压缩重新生成try.mdb。

  private sub command2_click()

  dim rarexe as string ‘winrar执行文件的位置

  dim source as string ‘ 解压缩前的原始文件

  dim target as string ‘ 解压缩后的目标文件

  dim filestring as string ‘shell指令中的字符串

  dim result as long

   rarexe="c:program fileswinrarwinrar"

  source="c:try.rar"

  target="c:try.mdb"

  filestring = rarexe & " x " & source & " " & target

  result = shell(filestring, vbhide)

  end sub

  文件从一台计算机传输到另一台计算机前,应知道另一台计算机的名字,然后用filecopy语句就可以了。假设要把压缩后try.rar传递到计算机名为"other"的共享目录"want"下。

  private sub command3_click()

  dim sourcefile, destinationfile

   sourcefile ="c:try.rar " ‘ 指定源文件名。

   destinationfile = "otherwanttry.rar" ‘ 指定目的文件名。

   filecopy sourcefile, destinationfile ‘ 将源文件的内容复制到目的文件中。

  end sub

  怎么样,十分简单吧?






junki 2003-08-13
  • 打赏
  • 举报
回复
当然可以!rar 是支持zip文件压缩的
去网上查找……
RAR 是一个让你在命令行模式中管理压缩文件的控制台应用。RAR 提供压缩、加 密、数据恢复和许多其它此手册中描述的其它功能。 RAR 只支持 RAR 格式压缩文件,它默认有 .rar 扩展名。不支持ZIP 和其他格 式。即使创建压缩文件时指定了 .zip 扩展名,它仍然是 RAR 格式的。Windows 用户 可以 WinRAR,它支持更多的压缩文件类型,包括 RARZIP 格式。 WinRAR 提供了图形用户界面和命令行模式。虽然控制台 RAR 和图形界面 WinRAR 有相似的命令行语法,但是它们还有有一些不同。所以推荐使用此 rar.txt 手册用于 控制台 RAR(rar.exe 在 Windows 版本的情况下),winrar.chm 是图形界面 WinRAR (winrar.exe) 的帮助文件。 配置文件 ~~~~~~~~ Unix 版本的 RAR 从用户的 home 或 /etc 目录中的 .rarrc 文件读取配置文件信息 (存储在 HOME 环境变量中) Windows 的版本 RARrar.ini 文件读取配置文件信息,它放在 rar.exe 文件相 同的目录中。 这个文件包含下列字符串: switches=任何 RAR 开关,用空格分开 例如: switches=-m5 -s 环境变量 ~~~~~~~~ 可以通过建立"RAR"环境变量来添加默认参数到命令行中. 例如,在 Unix 中,下列命令行可以被添加到你的配置中: RAR='-s -md1024' export RAR RAR 将使用这个字符串作为命令行的默认参数,并将使用 1024KB 字典大小来创建 “固实”压缩文件。 RAR 控制选项使用下列优先级: 命名行开关 最高优先级 在 RAR 变量中的开关 低优先级 保存在配置文件中的开关 最低优先级 日志文件 ~~~~~~~~ 如果在命令行或配置文件中指定开关 -ilog ,RAR 将会把处理压缩文件中遇到的错误 等写到日志文件中。读取开关 -ilog 描述获得更多信息。 固实压缩的文件列表 - rarfiles.lst ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rarfiles.lst 包含一个用户定义的文件列表,告诉 RAR 添加文件到固实压缩文件时的顺 序。它可以包含文件名通配符和指定项目 -$default。默认项目定义了这个文件中与 其他项目不相符时的顺序清单位置。 注释字符是 ';'. 在 Windows 中,这个文件应该放在 RAR 所在的或 %APPDATA%\WinRAR 目录中, 在 Unix 中- 放在用户的 home 目录或在 /etc 中。 提高压缩率和操作速度的提示: - 在压缩文件中,小文件应该被组织在一起; - 频繁被处理的文件应该放在开始的位置。 普通的掩码越靠近顶端优先权就越高,但是这个规则存在例外。如果 rarfiles.lst 包含两个掩码,并且所有文件既匹配第一个掩码,也匹配第二个掩码, 较小的子集 或者更精确的匹配拥有更高的优先权。例如,如果你用 *.cpp 和 f*.cpp 掩码, f*.cpp 拥有更高的优先权。 RAR 命令行语法 ~~~~~~~~~~~~~~ 语法 RAR [ - ] [ ] [ ] [ ] 描述 命令行选项 (命令和开关) 提供了使用 RAR 创建和管理压缩文件的控制方法。命 令是一个字符串(或单个的字母),命令 RAR 去执行一个相应的操作。开关被用来 改变 RAR 执行操作的方法。其它参数是压缩文件名和被压缩的文件或要从压缩文件 中被解压文件。 列表文件是一个包括处理的文件名的纯文本文件。第一列应该以文件名开始。可以 在//字符后添加注释。例如,你可以创建包含下列字符串的 backup.lst: c:\work\doc\*.txt //备份文本文档 c:\work\image\*.bmp //备份图片 c:\

1,453

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧