【问题标题】:How do I write Console.Writeline(" \|\/ \| /"); and ignore "Unrecognized escape sequence" error?如何编写 Console.Writeline(" \|\/ \| /");并忽略“无法识别的转义序列”错误?
【发布时间】:2013-02-28 17:43:34
【问题描述】:

例如我不希望这行代码:Console.Writeline(" \|\/ \| /"); 干扰程序,因为目前我收到错误 Unrecognized escape sequence 但我不想使用转义序列,我只是希望这些角色本身出现在控制台上。 有没有办法做到这一点?感谢您抽出宝贵时间阅读。

【问题讨论】:

  • 使用文字,Console.Writeline(@"\|/\ \| ?");

标签: c# console-application console.writeline


【解决方案1】:

听起来你想要一个逐字字符串文字,它不会将反斜杠视为转义字符,并且还允许使用多行文字:

Console.Writeline(@" \|\/ \| /");

请参阅MSDNthe "literals" section of my article on strings 了解更多详情。请注意,您仍然需要为双引号做一些工作。

【讨论】:

    【解决方案2】:
    Console.Writeline(@" \|/ \| /");
    

    MSDN string (C# Reference)

    【讨论】:

      【解决方案3】:

      使用

      Console.Writeline(@" \|/ \| /");
      

      @ 字符告诉编译器不要处理转义序列。

      【讨论】:

        【解决方案4】:

        写成Console.WriteLine(@" \|/ \| /")@ 符号告诉 Visual Studio 完全按照所写的方式使用字符串。

        或者,将每个\ 替换为\\,这是显示\ 的转义序列。

        【讨论】:

          【解决方案5】:

          您可以使用@ 称为verbatim string literal

          Console.Writeline(@" \|/ \| /");
          

          逐字字符串文字由一个 @ 字符后跟一个 双引号字符、零个或多个字符和一个结束符 双引号字符。一个简单的例子是@"hello"。逐字逐句 字符串文字,分隔符之间的字符被解释 逐字逐句,唯一的例外是引号转义序列。在 特别是简单的转义序列以及十六进制和 Unicode 转义 序列不按逐字字符串文字处理。

          【讨论】:

            【解决方案6】:

            我只想让这些角色本身出现在控制台上。

            那么你要么必须使用转义序列,要么使用verbatim string literal

            Console.Writeline(@" \|/ \| /");
            

            【讨论】:

              【解决方案7】:

              在字符串前面加上“@”之类的

              @" \|/ \| /"
              

              【讨论】:

                【解决方案8】:

                或者,您实际上可以正确使用(并理解)转义序列。要在您的字符串中使用\,您需要对它们进行转义。参考http://msdn.microsoft.com/en-us/library/h21280bw.aspx

                所以,你的实际命令是

                // Escaped characters make this show up as "\|/ \| /"
                Console.Writeline(" \\|/ \\| /");
                

                但输出将是\|/ \| /

                【讨论】:

                  猜你喜欢
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 2023-03-30
                  • 2021-05-10
                  • 2017-05-13
                  • 1970-01-01
                  • 2013-04-20
                  • 1970-01-01
                  相关资源
                  最近更新 更多