第1个回答 推荐于2016-01-14
可以在写入文件之前, 把string 内容做一个替换:
string str = ritchBox.Text.replace( "\n", "\r\n");
然后把str写入文件本回答被提问者采纳
第2个回答 2008-09-11
richTextBox1.Clear();
richTextBox1.AppendText("a" + Environment.NewLine +
"b" + "\n" +
"c" + "\r" +
"d" + "\n\r" +
"e" + "\r\n" +
"f");
string text = richTextBox1.Text;
string rtf = richTextBox1.Rtf;
赋值后,
text中存储的字符串为:
"a\nb\nc\nd\n\ne\nf"
rtf中存储的字符串为:
"{\\rtf1\\ansi\\ansicpg936\\deff0\\deflang1033\\deflangfe2052{\\fonttbl{\\f0\\fnil\\fcharset134 \\'cb\\'ce\\'cc\\'e5;}}\r\n\\viewkind4\\uc1\\pard\\lang2052\\f0\\fs18 a\\par\r\nb\\par\r\nc\\par\r\nd\\par\r\n\\par\r\ne\\par\r\nf\\par\r\n}\r\n"
总结:
1、在RichTextBox中,换行符由只"\n"表示。
2、如果给RichTextBox赋值,"\r\n"、"\n"、"\r"都将被转换成"\n",由于"\n\r"不是"\r\n"组合,所以被当成2个"\n"对待。
第3个回答 2008-09-11
用\n 替换为\r\n
试试
第4个回答 2018-06-22
replace要大写啊,大哥,用Replace。这是C#,方法名大写,Java的方法名才小写。
补充下楼下的最佳答案。windows记事本需要"\r\n"才能读出换行,其他的文本编辑器不需要,如notepad++,\n就可以直接读出换行。所以用其他文本编辑器就会换行,即使不加string str = ritchBox.Text.replace( "\n", "\r\n");也可以换行。up可以去试试。
第5个回答 2008-09-11
楼主所说的"输出后"是怎么输出的?输出到哪里?
输出部分的代码贴出来看看.