I write a tool using Split and Join Files Tool.
My 开发者_StackOverflowcode is:
foreach (String inputfiles in filename)
{
String outputfiles = inputfiles.Remove(inputfiles.Length - 4);
System.Diagnostics.ProcessStartInfo startinfo = new System.Diagnostics.ProcessStartInfo();
startinfo.FileName = "C:\\Users\\sepdau\\Downloads\\Programs\\FFSJ.exe";
startinfo.Arguments = "/C " + "-Task=Join " + "-Input=" + inputfiles + " -Output=" + outputfiles;
System.Diagnostics.Process.Start(startinfo);
}
return 1;
With filename
being a String Array of the files to Join.
When inputfiles
name contains blank space e.g. Lab 5.rar
it won't recieve full name but something like C:\.....\Lab
instead.
How to get full path of inputfiles
? Thank for helping :)
Simply quote your filename:
startinfo.Arguments = string.Format("/C -Task=Join -Input=\"{0}\" -Output=\"{1}\""
, inputfiles
, outputfiles
);
BTW, I'd rename inputFiles
-> inputFile
, and filename
-> filenames
. Multiple files should have a plural-form name; each individual file should have a singular-form name.
Try wrapping the value with double quotes:
startinfo.Arguments = string.Format("/C -Task=Join -Input=\"{0}\" -Output=\"{1}\"", inputfiles, outputfiles);
Also introduced cleaner way to assign such a string.
精彩评论