2013-03-19 43 views
0

的.txt阅读这样做新线dissapear于Android

String t = "asd\nasd"; 

TextBox objTxt = (TextBox)messageBox; 
bjTxt.Text = t; 

犯规秀

asd  
asd 

如预期时,它显示

asdasd 

为什么,它的驾驶我疯狂。 TextBox设置为多行,我可以手动在其中写入行。谢谢!

+1

您是否尝试过使用'Environment.NewLine'代替'\ N'? – 2013-03-19 22:04:02

+0

谢谢,它的工作原理。仍然是我需要做的这种低劣的事情。我实际上是使用ReadToEnd()读取文件,现在我需要逐行读取并在每行末尾使用Environment.NewLine。 – Carlos 2013-03-19 22:11:25

回答

2

TextBox不像LabelMessageBox如果你想获得你需要使用"\r\n"组合换行符忽略"\n"左右。尽管如此,还是有更好的解决方案,只需使用Environment.NewLine即可,您不需要考虑换行符的\ r \ n组合。

或者:

String t = "asd\r\nasd"; 

或者:

String t = "asd" + Environment.NewLine + "asd"; 

美丽的可爱之处Environment.NewLine是,有没有必要担心在任何环境下的新行要为其开发(或至少它应该是这样)。

编辑:

我看到你的评论,所以我会补充几句。你仍然可以使用ReadToEnd()如果文本中只包含 “\ n” 表示换行,你可以做到以下几点:

t = t.Replace("\n", "\r\n"); 

或者:

t = t.Replace("\n", Environment.NewLine); 

因为Environment.NewLine本质上是一个string

0

尝试使用TextBoxLines属性来分配文件中的所有行:

textBox.Lines = File.ReadAllLines(fileName); 

而且,正如我在评论说以上,为您的样品,你应该使用Environment.NewLine新线出现在TextBox

textBox.Text = "asd" + Environment.NewLine + "asd";