大家好,我正在编码,我需要为我的应用程序找到解决方案。实际上我做了,但是还有一点要走。这里是将文件压缩成rar格式文件的代码。
private const string RarPath = @"C:\Program Files\WinRAR\WinRAR.exe";
List<string> files = new List<string>();
public void RarFilesAdd(string rarPackagePath, List<string> files)
{
for (int i = 0; i < files.Count; i++) files[i] = string.Format("\"{0}\"", files[i]);
string dosyaListe = string.Join(" ", files.ToArray());
string arguman = string.Format("A {0} {1}", String.Format("\"{0}\"", rarPackagePath), dosyaListe);
Process.Start(String.Format("\"{0}\"", RarPath), arguman);
}
static void Main(string[] args)
{
// files.AddRange(System.IO.Directory.GetFiles(@""));
//RarFilesAdd(@"C:\my\test.rar", files);
Program nesne = new Program();
//
nesne.files.Add(@"C:\Users\Hüseyin\Desktop\AA\a.txt");
nesne.files.Add(@"C:\Users\Hüseyin\Desktop\AA\a1.txt");
nesne.RarFilesAdd(@"C:\Users\Hüseyin\Desktop\deneme.rar",nesne.files);
// nesne.files.AddRange(System.IO.Directory.GetFiles(@"C:\Users\Hüseyin\Desktop\deneme.rar"));
}
此代码在deneme.rar中创建具有完整路径的rar文件,例如C:\ Users \Hüseyin\ Desktop \ AA \ a1.txt。但是我希望它创建为rar文件,而没有任何文件夹。我想我没有清楚解释。现在,当我单击deneme.rar时,它将打开目录Users \Hüseyin\ AA。但是我想要位于AA中的文件,直接保存在deneme.rar中,而没有任何目录或文件。我想显示我想要的屏幕,但是我并没有做代表。
İf有谁能帮助我,这将非常好...大家好
您需要的命令行是:
"C:\Program Files\WinRAR\WinRAR.exe" a -ep "C:\Users\Hüseyin\Desktop\deneme.rar" "C:\Users\Hüseyin\Desktop\AA\a.txt" "C:\Users\Hüseyin\Desktop\AA\a1.txt"
在您的C#代码中,我错过a
了将文件添加到存档的命令,但是您的代码仍然有效,因为在未指定命令的情况下运行WinRAR时该命令是默认的。
重要的是使用开关-ep
从文件名中删除路径,因此仅将文件名存储在RAR归档中。
有关可用命令和开关的详细信息,请参见WinRAR的程序文件文件夹中的文本文件Rar.txt。
其他也可以使用的命令行:
"C:\Program Files\WinRAR\WinRAR.exe" a -ep "C:\Users\Hüseyin\Desktop\deneme.rar" "C:\Users\Hüseyin\Desktop\AA\"
将目录C:\Users\Hüseyin\Desktop\AA\
中的所有文件添加到存档中。
"C:\Program Files\WinRAR\WinRAR.exe" a -ep "C:\Users\Hüseyin\Desktop\deneme.rar" "C:\Users\Hüseyin\Desktop\AA\*.txt"
仅将目录中文件扩展名为TXT的所有文件添加C:\Users\Hüseyin\Desktop\AA\
到归档中。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句