我从我的应用程序打开cmd.exe并将其导航到一个文件,但问题是如果文件路径中有空格,它就不会去那里。
Process.Start("cmd.exe", "/C choice /C Y /N /D Y /T 3 & cd C:\Temp Folder");
而不是查看Temp文件夹,它只会查找我猜的温度。
一种方法是用“”包装路径,但我不能在字符串中执行。 (试过'')
另一种方法是遍历路径,找到空格并用某些东西替换它们,但我不知道是什么。
我可以通过这两种方式使用一些帮助(如果你有更好的方法,这很棒)
答案 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)
您需要为特殊字符使用转义字符 \
。所以,要逃避“,请使用 \"