如何使用csc.exe(.NET内置于C#编译器中)转义空白

本文关键字:编译器 空白 转义 内置 csc 何使用 exe NET | 更新日期: 2023-09-27 18:22:08

就像标题所说的,如何将文件名中传递的空白转义为csc.exe?不能使用Caret。例如,文件路径C:'Users'user name'My Documents'file.cs我通常会执行C:'Users'user^ name'My^ Documents'file.cs,但由于不能使用插入符号,因此会引发错误。我试过用双引号把路径名括起来,但没有成功。有什么帮助吗?

如何使用csc.exe(.NET内置于C#编译器中)转义空白

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

当路径中有空格时,将其包含在":中

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

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

用双引号("string")括起来的字符串被解释为单个参数,而不考虑其中包含的空格。带引号的字符串可以嵌入参数中。因此,正如奥德所提到的,将其包含在""中

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