例如,我不希望这行代码:Console.Writeline(" \|\/ \| /");干扰程序,因为目前我收到错误 Unrecognized escape sequence 但我不想使用转义序列,我只希望这些字符本身出现在控制台上。有没有办法做到这一点?感谢您花时间阅读。
			
			6097 次
		
8 回答
            6        
        
		
在我看来,您想要一个逐字字符串文字,它不会将反斜杠视为转义字符,并且还允许使用多行文字:
Console.Writeline(@" \|\/ \| /");
有关详细信息,请参阅MSDN或我关于字符串的文章的“文字”部分。请注意,对于双引号,您仍然需要做一些工作。
于 2013-02-28T17:44:36.080   回答
    
    
            3        
        
		
Console.Writeline(@" \|/ \| /");
于 2013-02-28T17:44:23.913   回答
    
    
            3        
        
		
利用
Console.Writeline(@" \|/ \| /");
该@字符告诉编译器不要处理转义序列。
于 2013-02-28T17:44:30.433   回答
    
    
            3        
        
		
写成Console.WriteLine(@" \|/ \| /"). 该@符号告诉 Visual Studio 完全按照所写的方式使用字符串。
或者,将每个替换\为\\,这是显示 的转义序列\。
于 2013-02-28T17:45:40.087   回答
    
    
            2        
        
		
您可以使用@调用verbatim string literal
Console.Writeline(@" \|/ \| /");
逐字字符串文字由一个 @ 字符后跟一个双引号字符、零个或多个字符以及一个结束双引号字符组成。一个简单的例子是@"hello"。在逐字字符串文字中,分隔符之间的字符被逐字解释,唯一的例外是引号转义序列。特别是,简单的转义序列以及十六进制和 Unicode 转义序列不会在逐字字符串文字中进行处理。
于 2013-02-28T17:44:49.023   回答
    
    
            2        
        
		
于 2013-02-28T17:44:50.827   回答
    
    
            0        
        
		
在字符串前面加上一个“@”,比如
@" \|/ \| /"
于 2013-02-28T17:44:44.837   回答
    
    
            -1        
        
		
或者,您实际上可以正确使用(并理解)转义序列。要\在您的字符串中使用,您需要对它们进行转义。请参阅http://msdn.microsoft.com/en-us/library/h21280bw.aspx以供参考
所以,你的实际命令是
// Escaped characters make this show up as "\|/ \| /"
Console.Writeline(" \\|/ \\| /");
但输出将是\|/ \| /
于 2013-02-28T17:48:38.590   回答