Экспорт данных из DataGrid в Excel с указанием кодировки - C#

Узнай цену своей работы

Формулировка задачи:

Доброе всем утро! Экспортирую данные из DataGrid в Excel таким образом:
Листинг программы
  1. dataGrid1.SelectAllCells();
  2. dataGrid1.ClipboardCopyMode = DataGridClipboardCopyMode.IncludeHeader;
  3. ApplicationCommands.Copy.Execute(null, dataGrid1);
  4. String resultat = (string)Clipboard.GetData(DataFormats.CommaSeparatedValue);
  5. String result = (string)Clipboard.GetData(DataFormats.Text);
  6. dataGrid1.UnselectAllCells();
  7. StreamWriter file = new StreamWriter(@"C:\test.xls", true, Encoding.GetEncoding(1251));
  8. file.WriteLine(result.Replace(',', ' '));
  9. file.Close();
  10. MessageBox.Show("Exporting DataGrid data to Excel file created");
Все работает, но меня не устраивает строка
Листинг программы
  1. StreamWriter file = new StreamWriter(@"C:\test.xls", true, Encoding.GetEncoding(1251));
Я бы хотел сохранять все в UTF-8. Но когда я ставлю
Листинг программы
  1. StreamWriter file = new StreamWriter(@"C:\test.xls", Encoding.UTF8);
компилятор ругается и говорит что "Ошибка 2 Аргумент "2": преобразование типа из "System.Text.Encoding" в "bool" невозможно". Если оставляю только
Листинг программы
  1. StreamWriter file = new StreamWriter(@"C:\test.xls");
- сохраняется кракозябрами.

Решение задачи: «Экспорт данных из DataGrid в Excel с указанием кодировки»

textual
Листинг программы
  1. StreamWriter file = new StreamWriter(@"C:\test.xls", true, Encoding.UTF8);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4.375 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы