C#调用WinRar压缩文件夹时,文件夹含有空格怎么处理

作者&投稿:牢咳 (若有异议请与网页底部的电邮联系)
C#调用winrar压缩文件夹~

"a -as"是压缩命令参数,这中间其实包含了2个命令参数
a:添加指定的文件和文件夹到压缩文件中
-as:同步压缩文件内容
如果此开关使用于压缩时,在当前添加的文件列表中不存在的被压缩文件,将会从压缩文件中删除。它可以很方便的与 -u 开关结合,用来同步压缩文件和压缩的文件夹的内容。
举例来说,在下面命令之后:
WinRAR a -u -as backup sources\*.cpp
压缩文件 backup.rar 将只会包含源文件夹的 *.cpp
文件,其它的全部文件将会从压缩文件中删除。它看起来就好象创建新压缩文件,但有一个重要的不同 :
如果从上次备份后没有修改过的文件,这项操作会比创建新压缩文件的操作快上许多。


另外,压缩时不包含路径则添加命令参数"-ep",
-ep:包含此开关时,文件在加入压缩文件时不会包含路径信息。这可能会有在压缩文件中,存在数个相同名称的结果。
例子:
从当前磁盘压缩全部的 *.bas 文件而不含路径。
WinRAR a -r -ep bsources \*.bas

以上参数说明均摘自winrar自带的说明文档,如果你需要其他功能,可以自行查看.

System.Diagnostics.Process pro = new System.Diagnostics.Process();
pro.StartInfo.FileName = @"C:\Program Files\WinRAR\WinRAR.exe";
pro.StartInfo.WorkingDirectory = yasuoPath;
pro.StartInfo.Arguments = "a -as -r " + yasuoPathSave + " * ";

改变如下:
1、多了一个参数-r表示包含子目录;
2、设置了当前工作目录,使基目录变化了。

"a-as"是压缩命令参数,这中间其实包含了2个命令参数a:添加指定的文件和文件夹到压缩文件中-as:同步压缩文件内容如果此开关使用于压缩时,在当前添加的文件列表中不存在的被压缩文件,将会从压缩文件中删除。它可以很方便的与-u开关结合,用来同步压缩文件和压缩的文件夹的内容。举例来说,在下面命令之后:WinRARa-u-asbackupsources\*.cpp压缩文件backup.rar将只会包含源文件夹的*.cpp文件,其它的全部文件将会从压缩文件中删除。它看起来就好象创建新压缩文件,但有一个重要的不同:如果从上次备份后没有修改过的文件,这项操作会比创建新压缩文件的操作快上许多。另外,压缩时不包含路径则添加命令参数"-ep",-ep:包含此开关时,文件在加入压缩文件时不会包含路径信息。这可能会有在压缩文件中,存在数个相同名称的结果。例子:从当前磁盘压缩全部的*.bas文件而不含路径。WinRARa-r-epbsources\*.bas以上参数说明均摘自winrar自带的说明文档,如果你需要其他功能,可以自行查看.


宁城县15258108638: C#调用WinRar压缩文件夹时,文件夹含有空格怎么处理 -
蓝耐卡文: "a-as"是压缩命令参数,这中间其实包含了2个命令参数a:添加指定的文件和文件夹到压缩文件中-as:同步压缩文件内容如果此开关使用于压缩时,在当前添加的文件列表中不存在的被压缩文件,将会从压缩文件中删除.它可以很方便的与-u...

宁城县15258108638: 如何用C# 调用WinRAR 解压RAR文件 -
蓝耐卡文: Process.Start("winrar.exe", "x \"F:\\vs\\debug.rar\" \"F:\\vs\"");

宁城县15258108638: C# 如何读取rar压缩包里面的指定文件 -
蓝耐卡文: FileStream常用的属性和方法: 属性: CanRead 判断当前流是否支持读取,返回bool值,True表示可以读取 CanWrite 判断当前流是否支持写入,返回bool值,True表示可以写入 方法: Read() 从流中读取数据,返回字节数组 Write() 将字...

宁城县15258108638: 用c# 怎么读取zip文件,调用rar.exe进行ZIP文件解压? -
蓝耐卡文: 你可以引用这个ddl文件ICSharpCode.SharpZipLib,下面是解压代码: public void UnZip(string zippath){if (!File.Exists(zippath))//如果文件没有找到,则报错{MessageBox.Show(string.Format("要解压的zip文件 {0} 不存在.", zippath), ...

宁城县15258108638: C# 如何读取rar压缩包里面的文件信息 -
蓝耐卡文: 貌似C#只能读取ZIP格式的压缩文件,而且要读取必须解压的. 你直接通过WinRar打开这些压缩文件,解压其中需要的那个文件效果也是一样的.

宁城县15258108638: VC如何调用rar 压缩多个文件为一个文件 -
蓝耐卡文: system("C:/Progra~1/WinRAR/WinRAR.exe a -ibck C:/bak.rar C:/aa.txt C:/bb.txt");原理:WinRAR支持命令行操作.启动WinRAR并传入相应的压缩参数即可完成文件的压缩与解压.启动外部应用程序也可以使用WinExec,ShellExecute ,...

宁城县15258108638: C# WinFrom关于文件夹压缩问题 -
蓝耐卡文: ZIP压缩格式是无法实现你需要的功能的...只能通过调用rar.exe里面有个“”来实现...网上有好多例子http://blog.csdn.net/cityhunter172/archive/2005/01/25/267150.aspx这个给你...

宁城县15258108638: C#怎么使用RAR.exe的命令行 -
蓝耐卡文: 就是普通的启动其它程序 System.Diagnostics.Process p=new System.Diagnostics.Process(); p.StartInfo.FileName=@"d:\rar.exe";//需要启动的程序名 p.StartInfo.Arguments="a ed ed.doc";//启动参数 p.Start();//启动//if(p.HasExisted)//判断是否运行结束//p.kill();

宁城县15258108638: c#调用执行cmd命令 -
蓝耐卡文: 我这里写了一个利用winrar.exe解压的文件,是可以执行的,确保服务器上安装winrar.exe工具 你再仔细检查下你的方法,using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using ...

宁城县15258108638: (C#)winform中实现选择一个文件夹,将其压缩复制到另外一个路径 ///楼主这个问题怎么解决的呢?
蓝耐卡文: using System.Diagnostics;Process process = new Process();process.StartInfo.FileName = @"C:\Program Files\WinRAR\Winrar.exe" //这是你安装Winrar的路径process.StartInfo.Argument = @" a -r C:\abc.rar C:\abc\drra"//第一个路径是压缩文件将要拷贝到的位置,第二个路径是你要压缩的文件夹process.Start();//这句话之后就开始压缩了

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网