如何使用csc.exe(.NET内置的C#编译器)来逃避空白

时间:2013-07-13 11:03:35

标签: c# .net compiler-construction

就像标题所说,如何将文件名中传递的空格转移到csc.exe? Caret's不能使用。例如,文件路径C:\Users\user name\My Documents\file.cs我通常会C:\Users\user^ name\My^ Documents\file.cs,但由于不能使用插入符号,因此会抛出错误。我试过用双引号包装路径名但没有运气。有什么帮助吗?

2 个答案:

答案 0 :(得分:0)

这是一般操作系统问题,而不是编译器。

如果路径中有空格,请将其括在"

csc <other parameters> "C:\Users\user name\My Documents\file.cs"

答案 1 :(得分:0)

插入符(^)不会被识别为转义字符或分隔符。在将字符传递给程序中的argv数组之前,该字符由操作系统中的命令行解析器处理。

用双引号(“string”)括起来的字符串被解释为单个参数,而不管其中包含的空格。带引号的字符串可以嵌入参数中。正如Oded所提到的那样,它在“。

参考:http://msdn.microsoft.com/en-us/library/vstudio/78f4aasd.aspx