我有一个 RichTextBox,我想将文本保存到文件中。RichTextBox 的每一行都以 CR+LF ("\n\r") 结尾,但是当我将其保存到文件时,这些行最后只包含 LF 字符。
如果我将内容复制到剪贴板而不是文件,一切正常(剪贴板的内容在每一行的末尾都有 CR+LF,当我粘贴到 Notepad++ 时我可以看到它)。txtClass 是 RichTextBox。
private void btnToClipboard_Click(object sender, EventArgs e) { //按需要工作 Clipboard.SetText(txtClass.Text); }
private void btnToFile_Click(object sender, EventArgs e)
{
//Don't work as desired
SaveFileDialog saveFileDialog1 = new SaveFileDialog();
saveFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";
saveFileDialog1.FilterIndex = 2;
saveFileDialog1.RestoreDirectory = true;
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
System.IO.StreamWriter SW = new System.IO.StreamWriter(saveFileDialog1.FileName, false, Encoding.ASCII);
SW.Write(txtClass.Text);
SW.Close();
}
}
此时,我也尝试了
SW.NewLine = "\r\n";
SW.Newline = Environment.NewLine
并带有所有 Enconding avalilables。
如果我使用 SW.Write("Line One\r\nLineTwo\r\nLineThree") 也可以正常工作。
谢谢你的帮助