- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有制作.rar文件的程序。
public static void RarFilesT(string rarPackagePath, Dictionary<int, string> accFiles)
{
string[] files = new string[accFiles.Count];
int i = 0;
foreach (var fList_item in accFiles)
{
files[i] = "\"" + fList_item.Value;
i++;
}
string fileList = string.Join("\" ", files);
fileList += "\"";
System.Diagnostics.ProcessStartInfo sdp = new System.Diagnostics.ProcessStartInfo();
string cmdArgs = string.Format("A {0} {1} -ep",
String.Format("\"{0}\"", rarPackagePath),
fileList);
sdp.ErrorDialog = true;
sdp.UseShellExecute = true;
sdp.Arguments = cmdArgs;
sdp.FileName = rarPath;//Winrar.exe path
sdp.CreateNoWindow = false;
sdp.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
System.Diagnostics.Process process = System.Diagnostics.Process.Start(sdp);
process.WaitForExit();
}
这个生产者需要一个文件列表的字符串数组来制作 rar 文件。谁能告诉我如何制作包含子文件夹和文件的完整文件夹的 rar。对不起 1 个错误,我还需要从给定文件夹中选择扩展文件。
最佳答案
/// <summary>
/// Package files. (Build Rar File)
/// </summary>
/// <param name="rarPackagePath">Rar File Path</param>
/// <param name="accFiles">List Of Files To be Package</param>
public static string RarFiles(string rarPackagePath,
Dictionary<int, string> accFiles)
{
string error = "";
try
{
string[] files = new string[accFiles.Count];
int i = 0;
foreach (var fList_item in accFiles)
{
files[i] = "\"" + fList_item.Value;
i++;
}
string fileList = string.Join("\" ", files);
fileList += "\"";
System.Diagnostics.ProcessStartInfo sdp = new System.Diagnostics.ProcessStartInfo();
string cmdArgs = string.Format("A {0} {1} -ep1 -r",
String.Format("\"{0}\"", rarPackagePath),
fileList);
sdp.ErrorDialog = false;
sdp.UseShellExecute = true;
sdp.Arguments = cmdArgs;
sdp.FileName = winrarPath;//Winrar.exe path
sdp.CreateNoWindow = false;
sdp.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
System.Diagnostics.Process process = System.Diagnostics.Process.Start(sdp);
process.WaitForExit();
error = "OK";
}
catch (Exception ex)
{
error = ex.Message;
}
return error;
}
为此,您可以制作具有完整文件夹路径的 rar。-r 参数可以递归文件夹和文件。感谢旁观者。您还可以指定包装的扩展名。
string rarPackage = "E:/Backup.rar";
Dictionary<int, string> accFiles = new Dictionary<int, string>();
accFiles.Add(1, "D://*.txt");
accFiles.Add(2, "D://*.html");
accFiles.Add(3, "D://*.jpg");
RarFiles(rarPackage, accFiles);
public static void UnrarFiles(string rarPackagePath, string dir)
{
System.Diagnostics.ProcessStartInfo sdp = new System.Diagnostics.ProcessStartInfo();
string cmdArgs = string.Format("X {0} * {1}",
String.Format("\"{0}\"", rarPackagePath),
String.Format("\"{0}\"", dir));
sdp.Arguments = cmdArgs;
sdp.ErrorDialog = true;
sdp.UseShellExecute = true;
sdp.CreateNoWindow = false;
sdp.FileName = rarPath;
sdp.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
System.Diagnostics.Process process = System.Diagnostics.Process.Start(sdp);
process.WaitForExit();
}
关于c# - 如何使用c#制作完整文件夹的rar文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15988856/
我有一个 .RAR 文件,其中包含同名的不同文件。 例如, index.txt 40 Text Document 04/01/2010 4:40PM index.txt 22 Text Documen
嘿 guyz 我想要 rar(不是 tar)我服务器上的文件夹,使用 php 压缩包 RAR 3.93 Copyright (c) 1993-2010 Alexander Roshal 15 Mar
他们指的是同一件事吗?它们有关系吗? 根据 Oracle,资源适配器存档 (RAR) 是: Resource Adapter Archive (RAR): A RAR file holds a res
灵感来自this answer ,我正在使用: java -jar %BUILDTOOLSPATH%\jill.jar --output classes.jayce src java -jar %BU
有人知道如何比较 archiwum.rar 中的文件数量和文件大小及其在文件夹中提取的内容吗? 我想这样做的原因是,我正在使用的服务器在提取过程中已重新启动几次,我不确定是否所有文件都已正确提取。 .
我正在尝试在 C# WinForms .NET 3.5 中使用 SevenZipSharp 或/和 Unrar 库。我对具有不同命名的多 rar 文件有这个问题,例如: .rar, r01, r02,
我有 7 个扩展名为 xyz.rar.001 - xyz.rar.007 的文件,显然它们是单个文件的一部分。我有所有的 7 个部分。我使用文件连接器将它们加入单个文件 xyz.rar 并尝试使用 W
1) 我有一个名为 CCBuilds 的文件夹,其中包含以下路径中的几个文件:E:\Testing\Builds\CCBuilds . 2) 我已将 C# 代码 (Process.Start) 写入
我想要这个 RAR 组件:http://www.philippewechsler.ch/RARComponent.php 通过菲利普韦克斯勒。 但我不明白我如何才能为存档中的文件而不是存档请求密码?
我正在尝试暴力破解受 3 个字符密码保护的 RAR 压缩文件: import os Alphabets = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" for a in range(0,
我正在尝试对 rar 存档进行暴力攻击,我需要尽快进行密码检查。我以这种方式从我的程序中调用 rarlab 的“unrar”命令行实用程序: unrar t -p[password] archive.
我想 rar 一个文件夹,但排除某些文件夹和它们下面的所有文件 - .svn 文件夹。 如何使用 rar 控制台命令 (rar.exe) 实现这一点? 最佳答案 你试过-x.svn*吗 关于svn -
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 1年前关闭。 Improve thi
这是我的案例:用户上传包含多个文件的 .rar 文件。 显示.rar文件并可下载。 但是如何在前端实现一个功能,该功能将显示要下载的 .rar 文件以及链接(整个文件),然后也可以显示 .rar 中的
我正在尝试创建一个自解压存档,使用 WinRar 解压到“%USERPROFILE%\Desktop”。但是,当我运行它时,它会解压到 SFX 的当前目录,而不是我的桌面。 提取路径选项是否有效? 我
我尝试从 RAR 加载文件。我正在使用 sFileName=Thread.currentThread().getContextClassLoader().getResource("common.xml
我通过互联网查看了 winrar 的命令行参数是如何工作的,这就是我目前所了解的 void LOCK(string fld, string pw) { Proc
我该怎么做?我见过一个解决方案,因为 ruby 不支持 loookaround 断言,所以不对 ruby 使用单个正则表达式。但是在 C# 中可能吗? [Test] public void R
已关闭。此问题旨在寻求有关书籍、工具、软件库等的建议。不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以
我想列出文件夹及其子文件夹中的 .rar 文件,直到没有文件夹为止。 这是我目前使用的代码: private String getFileNums(File file) { if (f
我是一名优秀的程序员,十分优秀!