开发者

How to get full file directory in this command

开发者 https://www.devze.com 2023-03-19 09:36 出处:网络
I write a tool using Split and Join Files Tool. My 开发者_StackOverflowcode is: foreach (String inputfiles in filename)

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.

0

精彩评论

暂无评论...
验证码 换一张
取 消