Записать файл в Excel с поддержкой кириллицы - C#

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

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

Подскажите как на С# записать файл в Excel с поддержкой кириллицы.

Решение задачи: «Записать файл в Excel с поддержкой кириллицы»

textual
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Runtime.InteropServices;
  4. using ConsoleApplication2;
  5. using Excel = Microsoft.Office.Interop.Excel;
  6.  
  7. namespace ConsoleApplication2
  8. {
  9.     class Price
  10.     {
  11.  
  12.         public string Name { get; set; }
  13.         public string Cost { get; set; }
  14.         public string Site { get; set; }
  15.  
  16.     }
  17.     class PrintExel
  18.     {
  19.         public static void ExportToExcel(List<Price> vPices)
  20.         {
  21.             // Загрузить Excel, затем создать новую пустую рабочую книгу
  22.             Excel.Application excelApp = new Excel.Application();
  23.  
  24.             // Сделать приложение Excel видимым
  25.             excelApp.Visible = true;
  26.             excelApp.Workbooks.Add();
  27.             Excel._Worksheet workSheet = excelApp.ActiveSheet;
  28.             // Установить заголовки столбцов в ячейках
  29.             workSheet.Cells[1, "A"] = "NameCompany";
  30.             workSheet.Cells[1, "B"] = "Site";
  31.             workSheet.Cells[1, "C"] = "Cost";
  32.             int row = 1;
  33.             foreach (Price c in vPices)
  34.             {
  35.                 row++;
  36.                 workSheet.Cells[row, "A"] = c.Name;
  37.                 workSheet.Cells[row, "B"] = c.Site;
  38.                 workSheet.Cells[row, "C"] = c.Cost;
  39.             }
  40.  
  41.             // Придать симпатичный вид табличным данным
  42.             workSheet.Range["A1"].AutoFormat(Excel.XlRangeAutoFormat.xlRangeAutoFormatClassic2);
  43.             // Сохранить файл, выйти из Excel
  44.  
  45.             // убрать предупреждения!!! нужно для перезаписи
  46.             excelApp.DisplayAlerts = false;
  47.             workSheet.SaveAs(string.Format(@"{0}\Price.xlsx", Environment.CurrentDirectory));
  48.  
  49.             excelApp.Quit();
  50.  
  51.         }
  52.         public static List<Price> ImportToExcel()
  53.         {
  54.             // Загрузить Excel, затем создать новую пустую рабочую книгу
  55.             Excel.Application excelApp = new Excel.Application();
  56.             excelApp.Visible = false;
  57.             excelApp.Workbooks.Open(string.Format(@"{0}\Price.xlsx", Environment.CurrentDirectory));
  58.             Excel._Worksheet workSheet = excelApp.ActiveSheet;
  59.             List<Price> tmPrices = new List<Price>();
  60.             for (int row = 1; row < 4; row++)
  61.             {
  62.                 tmPrices.Add(new Price
  63.                 {
  64.                     Name = workSheet.get_Range(string.Format("A{0}", row + 1)).Value2.ToString(),
  65.                     Site = workSheet.get_Range(string.Format("B{0}", row + 1)).Value2.ToString(),
  66.                     Cost = workSheet.get_Range(string.Format("C{0}", row + 1)).Value2.ToString()
  67.                 });
  68.             }
  69.             excelApp.Quit();
  70.             return tmPrices;
  71.         }
  72.     }
  73.  
  74.     class Program
  75.     {
  76.         static void Main()
  77.         {
  78.             /// Тест записи в эксель
  79.             var ListPricee = new List<Price>();
  80.             ListPricee.Add(new Price { Name = "СУПЕР", Site = "ввв.точка.ру", Cost = "милион рублей" });
  81.             ListPricee.Add(new Price { Name = "сложно", Site = "ввв.точка.ком", Cost = "три" });
  82.             ListPricee.Add(new Price { Name = "очень", Site = "ввв.многоточек.ру", Cost = "два" });
  83.  
  84.             // Записываем в эксель
  85.             PrintExel.ExportToExcel(ListPricee);
  86.  
  87.             // Cчитываем из экселя
  88.             var MyListPrice = PrintExel.ImportToExcel();
  89.            
  90.            
  91.             Console.ReadKey();
  92.         }
  93.     }
  94. }

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


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

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

6   голосов , оценка 4 из 5

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

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

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