C#Cmd进程无法使用空间

时间:2011-06-08 14:25:10

标签: c# cmd

我从我的应用程序打开cmd.exe并将其导航到一个文件,但问题是如果文件路径中有空格,它就不会去那里。

Process.Start("cmd.exe", "/C choice /C Y /N /D Y /T 3 & cd C:\Temp Folder");

而不是查看Temp文件夹,它只会查找我猜的温度。

一种方法是用“”包装路径,但我不能在字符串中执行。 (试过'')

另一种方法是遍历路径,找到空格并用某些东西替换它们,但我不知道是什么。

我可以通过这两种方式使用一些帮助(如果你有更好的方法,这很棒)

2 个答案:

答案 0 :(得分:4)

字符串中的\需要进行转义,您需要在双引号中包含空格的文件夹名称。

尝试

Process.Start("cmd.exe", @"/C choice /C Y /N /D Y /T 3 & cd C:\""Temp Folder""");

Process.Start("cmd.exe", "/C choice /C Y /N /D Y /T 3 & cd C:\\\"Temp Folder\"");

答案 1 :(得分:3)

您需要为特殊字符使用转义字符 \ 。所以,要逃避“,请使用 \"