当我尝试将RichTextBox1.Text
打印到文本文件时,我总是在一行中得到结果,即使它是 RichBox 中的多行文本。
我想打印文本文件中的richBoxText.Text
,与在 RichBox 中找到的完全一样
string[] ReadMeArry = { "<description>", "DE", richTextBox1.Text, "", "EN", richTextBox2.Text, "</description>", "", "<internal>", "Owner: " + textBox3.Text, "Ticket: " + textBox4.Text, "</internal>" };
File.WriteAllLines(Path.Combine(path, "ReadMe.txt"), ReadMeArry);
文本应如下所示:
<description>
DE
"RichBoxText here in mulitple Lines"
.
.
.
EN
</description>
<internal>
Owner: sha
Ticket: s
</internal>
也许是因为 WriteAllLines
方法无法管理本身为多行的数组项。
尝试替换此
string[] ReadMeArry = { "<description>", "DE", richTextBox1.Text, "", "EN", richTextBox2.Text, "</description>", "", "<internal>", "Owner: " + textBox3.Text, "Ticket: " + textBox4.Text, "</internal>" };
有了那个
string[] ReadMeArry = { "<description>", "DE", "", "EN", "</description>", "", "<internal>", "Owner: " + textBox3.Text, "Ticket: " + textBox4.Text, "</internal>" };
var res = ReadMeArry
.Concat(richTextBox1.Lines)
.Concat(richTextBox2.Lines).ToArray();
File.WriteAllLines(Path.Combine(path, "ReadMe.txt"), res);
在我的示例中,顺序没有得到尊重,但如果这解决了您的问题,那么根据您的需求进行调整会相当简单。不过,这是一个快速解决方案,考虑到您的用例,我认为File.WriteAllLines
可能不是创建文件的最佳方式。