2017-03-06 24 views
1

执行本C#线后:C#字符转义没有得到什么的预期

String x = "This is a \"Test\""; 

我想X等于这个:

This is a "Test" 

,而是它是这样的:

This is a \"Test\" 

我究竟做错了什么?没有逃脱序列,我尝试工作。我在Visual Studio中这样做,所以我想知道是否有一些设置我无意中更改了,或者我是否做错了?

+3

怎么样,当你做'Console.WriteLine(x);'?它打印什么? – dcg

+6

是输出行打印还是在调试器中? – AlG

+5

我打赌大量的钱,你正在看调试器中的字符串,这是“帮助”为你逃脱它。在控制台上打印:反斜杠不在那里。或者看一下'Length'属性,它会告诉你它是17,而不是19. –

回答

3

在您的代码中,x确实包含您想要的字符串,但转义序列可能仍显示在IDE中,具体取决于您查看它的位置(例如,在调试器中)。在应用程序中,例如使用Console.WriteLine(x);进行输出,字符串将显示为反斜杠。

+0

啊,谢谢。我认为IDE是一个因素。好东西知道! –

+0

不,他只是想给我介绍一个与这个问题无关的问题。 –