У меня есть RichTextBox, и я хочу сохранить текст в файл. Каждая строка RichTextBox заканчивается символом CR + LF ("\ n \ r"), но когда я сохраняю его в файл, в конце строки содержится только символ LF.
Если я копирую содержимое в буфер обмена, а не в файл, все идет хорошо (содержимое конца буфера имеет CR + LF в конце каждой строки, я вижу его, когда вставляю в Notepad ++). txtClass - это RichTextBox.
private void btnToClipboard_Click (отправитель объекта, 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.
Если я использую
SW.Write ("Line One \ r \ nLineTwo \ r \ nLineThree") также отлично работает.
Спасибо за вашу помощь