你如何在“@ ...”C#字符串中写一个标签(\ t)?

时间:2011-09-13 17:02:30

标签: c# escaping

  

可能重复:
  C# @“” how do i insert a tab?

我正在尝试使用键盘上的选项卡,但编译器会将选项卡解释为空格。使用\t也无效,它会将其解释为\t。是不可能还是我错过了什么?

string str = @"\thi";
MessageBox.Show(str); // Shows "\thi"

5 个答案:

答案 0 :(得分:11)

拆分字符串并在\t处插入所需的字符?

var str = @"This is a" + "\t" + @"tab";

答案 1 :(得分:6)

逐字string literal的重点是关闭转义,以便在写入时可以读取反斜杠。如果要转义,则使用常规字符串文字(不带at符号)。

当然,您可以在字符串中放置一个文字制表符(通过按Tab键)。

答案 2 :(得分:5)

另一个选项是将选项卡指定为string.Format中的参数:

string.Format(@"XX{0}XX", "\t"); // yields "XX    XX"

答案 3 :(得分:3)

VS2010中的

- 如果您从richtext应用程序复制到剪贴板,并且该内容中有一个选项卡,我相信它会粘贴到VS2010编辑器中。

(我认为这是在越野车方面,如果将来行为发生变化也不会感到惊讶)

答案 4 :(得分:2)

您使用的是string literal

相反,只需这样做:

string str = "\thi";
MessageBox.Show(str);