如何为文件夹指定多个文件扩展名
本文关键字:文件 扩展名 文件夹 | 更新日期: 2023-09-27 18:09:27
我正在使用c#代码创建一个文件夹的。rar文件。
string zipFileToWrite, folderPath;
zipFileToWrite = @"D:'jack.zip";
folderPath = @"D:'New folder";
System.Diagnostics.Process MyProcess = new System.Diagnostics.Process();
MyProcess.StartInfo.WorkingDirectory = @"D:'NetworkPathChecking'FileBackup'FileBackup'bin'Debug'App_Files'";
MyProcess.StartInfo.FileName = "winrar.exe";
MyProcess.StartInfo.Arguments = "a -r " + "'"" + zipFileToWrite + "'"" + " " + "'"" + folderPath + "'"";
MyProcess.Start();
MyProcess.WaitForExit();
string zipFileToWrite, folderPath;
zipFileToWrite = @"D:'jack.zip";
folderPath = @"D:'New folder";
System.Diagnostics.Process MyProcess = new System.Diagnostics.Process();
MyProcess.StartInfo.WorkingDirectory = @"D:'NetworkPathChecking'FileBackup'FileBackup'bin'Debug'App_Files'";
MyProcess.StartInfo.FileName = "winrar.exe";
MyProcess.StartInfo.Arguments = "a -r " + "'"" + zipFileToWrite + "'"" + " " + "'"" + folderPath + "'"";
MyProcess.Start();
MyProcess.WaitForExit();
现在我需要指定多个扩展名作为从文件夹生成.rar的文件的过滤器。我该怎么做呢?
使用带有*. fileextension的文件列表可以解决这个问题。
程序public static string RarFilesT(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 = 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();
error = "OK";
}
catch (Exception ex)
{
error = ex.Message;
}
return error;
}
调用过程private void btnSave_Click(object sender, EventArgs e)
{
Dictionary<int, string> accFiles = new Dictionary<int, string>();
accFiles.Add(1, @"D:'New folder'New folder'*.txt");
accFiles.Add(2, @"D:'New folder'*.html");
RarFilesT(@"D:'test.rar",accFiles );
}
现在这个过程工作得很好。