天天看点

应用程序接收参数为空字符串的解决方法

假设一个应用程序接收两个参数为 UserName 和Password

代码如下:

Process.StartInfo.Arguments = userName  + " " + password ;

如果

string userName = "userTest";

string password = "pwdTest"

那么上面的代码是没有问题的,

但是如果 userName 和 password 有空格, 或者password = "";

那么Process.StartInfo.Arguments = "userTest  "; // 密码为空 "userTest" + " " + " "

这样传递给应用程序以后,就只解析出了一个参数"userTest", 出现参数个数不正确

正确的方法是,如下代码

Process.StartInfo.Arguments = "/"" userName  + "/"  /"" + password + "/" " ;