我正在构建一个应用程序,我应该捕获几个值并使用它们构建一个文本:姓名、年龄等。
输出将是一个纯文本到一个文本框。
我试图使这些信息出现在一种列,因此我试图用tab分开它们,使它更清楚。
例如,不要有:
Ann 26
Sarah 29
Paul 45
我希望它显示为:
Ann 26
Sarah 29
Paul 45
任何提示如何插入标签到我的文本?
我正在构建一个应用程序,我应该捕获几个值并使用它们构建一个文本:姓名、年龄等。
输出将是一个纯文本到一个文本框。
我试图使这些信息出现在一种列,因此我试图用tab分开它们,使它更清楚。
例如,不要有:
Ann 26
Sarah 29
Paul 45
我希望它显示为:
Ann 26
Sarah 29
Paul 45
任何提示如何插入标签到我的文本?
当前回答
当使用文字字符串(以@"开头)时,这可能更容易
char tab = '\u0009';
string A = "Apple";
string B = "Bob";
string myStr = String.Format(@"{0}:{1}{2}", A, tab, B);
将导致Apple:<tab>Bob
其他回答
当使用文字字符串(以@"开头)时,这可能更容易
char tab = '\u0009';
string A = "Apple";
string B = "Bob";
string myStr = String.Format(@"{0}:{1}{2}", A, tab, B);
将导致Apple:<tab>Bob
哈扎尔是对的。下面是c#中转义字符的完整列表:
\'表示一个单引号。
作为双引号。
\\表示反斜杠。
\0表示空字符。
\a表示警告字符。
\b表示退格。
\f表示表单提要。
\n为一个新的行。
\r表示马车返回。
\t用于水平制表符。
\v表示垂直制表符。
\uxxxx表示unicode字符十六进制值(例如\u0020)。
\x和\u是一样的,但是你不需要前导零(例如\x20)。
\Uxxxxxxxx表示unicode字符十六进制值(生成代理时需要较长的格式)。
var text = "Ann@26"
var editedText = text.Replace("@", "\t");
string St = String.Format("{0,-20} {1,5:N1}\r", names[ctr], hours[ctr]);
richTextBox1.Text += St;
这很好,但你必须有一个单一行距字体。
有几种方法可以做到这一点。最简单的方法是在文本中使用\t。然而,有可能\t在某些情况下不工作,如PdfReport nuget包。