Странная кодировка при чтении файла с русским текстом и бинарные файлы - C#
Формулировка задачи:
Доброго времени суток!
Пишу програмулину для открытия существующего .txt файла и создания его бинарной копии. Есть TextBox, 2 кнопки, save и open диалоги. Так вот, при считывании файла с русскими буквами я получаю ромбообразную непонятную кодировку. Добавил уже 1251 как параметр кодировки, всё равно не отображает русский алфавит.private void button1_Click(object sender, EventArgs e) { Encoding enc = Encoding.GetEncoding(1251); // Задание параметров диалога открытия openFileDialog1.Filter = "Text file|*.txt"; openFileDialog1.Title = "Select a file to convert"; // Работа диалога открытия if (openFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK) { System.IO.StreamReader sr = new System.IO.StreamReader(openFileDialog1.FileName,enc); //filepath = openFileDialog1.FileName; textBox1.Text = System.IO.File.ReadAllText(openFileDialog1.FileName); sr.Close(); } else if (openFileDialog1.ShowDialog() == DialogResult.Cancel) return; //button2.Enabled = true; }
private void button2_Click(object sender, EventArgs e) { saveFileDialog1.Filter = "Text File|*.txt"; saveFileDialog1.Title = "Save the converted Binary File"; saveFileDialog1.ShowDialog(); saveFileDialog1.CreatePrompt = true; saveFileDialog1.OverwritePrompt = true; if (saveFileDialog1.FileName != "") { System.IO.BinaryWriter bw = (System.IO.BinaryWriter)saveFileDialog1.OpenFile(); // ошибка преобразования System.IO.Stream в System.IO.BinaryWriter ////////////// // запись содержимого textbox в файл ////////////// bw.Close(); }
Решение задачи: «Странная кодировка при чтении файла с русским текстом и бинарные файлы»
textual
Листинг программы
textBox1.Text = System.IO.File.ReadAllText(openFileDialog1.FileName, Encoding.Default);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д