C#中,当我们在文本框(TextBox)中输入数据时,我们即可换行(多行文本框MultiLine),也可multilin 文本框输入以打出空格。但是,当我们把文本框中的数据读出,用另文本框数据空格一个控件显示 或者直接用Response.Write显示时却无法按我们预期的respons write 显示效果显示换行与空格:换行以及空格(多个空格也一样)效果显示一样都以一个空格显示。因此我们需要一种能转换空格和换行的方法:
C#中换行用"
"表示,
、
的Unicode码分别为13、10;表示空格的Unicode码为32。
1、换行符 转换 :(有以下三种)
1 string newline=TextBox1.Text.Replace("x0Dx0A", "<br />");
2 string newline=TextBox1.Text.Replace(" ", "<br />");
3 string newline = TextBox1.Text.Replace(Char.ConvertFromUtf32(13) Char.ConvertFromUtf32(10), "<br />");//<br />是本人习惯,也可以写<br>
2、空格 转换: (2种)
1 string newline=TextBox1.Text.Replace("x20", " ");
2 string newline=TextBox1.Text.Replace(Char.ConvertFromUtf32(32), " ");
如果您跟我有一样的习惯,喜欢用<br />的话:如果你换喜欢一样如果行、空格都要转换,务请先转换空格,再转换换行,否则空格转换否则无法换行显示。个人认为:空格转换把换行转换成的<br个人显示空格 />中的空格也转换了。
如:
Label1.Text = (TextBox1.Text.Replace( Char.ConvertFromUtf32(32), " ")).Replace(Char.ConvertFromUtf32(13) Char.ConvertFromUtf32(10), "<br />convertfromutf textbox replac;");
或者
Label1.Text = (TextBox1.Text.Replace(Char.ConvertFromUtf32(13) Char.ConvertFromUtf32(10), "<br>").Replace( Char.ConvertFromUtf32(32), " convertfromutf textbox replac;"));