开发者

how to parse main arguments?

开发者 https://www.devze.com 2023-01-10 20:02 出处:网络
How can I find this information : think we started this process : testFile.exe i- 100 k- \"hello\" j-\"C:\\\" \"D:\\Images\" f- \"true\"

How can I find this information :

think we started this process :

testFile.exe i- 100 k- "hello" j-"C:\" "D:\Images" f- "true" 

Now how can I get main argument when application started so I have :

int i = ... ; //i will be 100
string k = ... ; // k = hello
string[] path = ... ; // = path[0] = "C:\" , path[1] = "D:\Images"
bool f = ... ; // f = true;

regar开发者_如何学运维ds


The arguments are passed to the Main function that is being called:

static void Main(string[] args) 
{
    // The args array contain all the arguments being passed:
    // args[0] = "i-"
    // args[1] = "100"
    // args[2] = "k-"
    // args[3] = "hello"
    // ...
}

Arguments are in the same order as passed in the command line. If you want to use named arguments you may take a look at this post which suggests NDesk.Options and Mono.Options.


You can use Environment.CommandLine or Environment.GetCommandLineArgs()

String[] arguments = Environment.GetCommandLineArgs();

More info on MSDN


As already answered, you can use the string[] args parameter or Environment.GetCommandLineArgs(). Note that for CLickOnce deployed apps you need something else.

You can do your own processing on the string[] or use a library, like this one on CodePlex.

For some tricky details on spaces in filenames and escaping quotes, see this SO question.


You could use NDesk.Options. Here is their documentation.

0

精彩评论

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