Member 12613458 Ответов: 3

C# преобразование csv в xlsx


C# - I want to convert a csv file to xlsx format on a server where office is not installed.

What I have tried:

//Using Interop
                //Application app = new Application();
                //Workbook wb = app.Workbooks.Open(Util.CSVFileName);
                //wb.SaveAs(Util.XLSXFileName, XlFileFormat.xlOpenXMLWorkbook, AccessMode: XlSaveAsAccessMode.xlExclusive);
                //wb.Close();
                //app.Quit();

Richard MacCutchan

И что происходит, когда вы это делаете?

Member 12613458

Мне нужно сохранить как номера версии Office. что-то вроде Open Excel может помочь

Member 12613458

Мне нужно сохранить как номера версии Office. что - то вроде Open XML может помочь

Karthik_Mahalingam

Всегда использовать  Ответить   кнопка для отправки комментариев/запросов заинтересованному пользователю, чтобы пользователь получил уведомление и ответил на ваш текст.

Patrice T

Знаете ли вы, что Excel может открыть файл .csv напрямую ?

Philippe Mori

Очевидно, что это бесполезно, так как Excel может открывать эти файлы. Однако необходимо убедиться, что реферальные настройки правильно установлены, так как Excel предполагает системный разделитель...

[no name]

Эта ссылка может помочь - Преобразование CSV-файла в Excel на языке C#

3 Ответов

Рейтинг:
9

Member 12613458

if (File.Exists(Util.XLSXFileName))
                {
                    File.Delete(Util.XLSXFileName);
                }
                //Save as xlsx using Spire
                Workbook workbook = new Workbook();
                workbook.LoadFromFile(Util.CSVFileName, ",", 1, 1);
                Worksheet sheet = workbook.Worksheets[0];
                sheet.Name = "csv to excel";
                workbook.SaveToFile(Util.XLSXFileName, ExcelVersion.Version2010);

                //Delete Evaluation Warning using EPPlus
                var workbookFileInfo = new FileInfo(Util.XLSXFileName);
                using (var excelPackage = new ExcelPackage(workbookFileInfo))
                {
                    var worksheet = excelPackage.Workbook.Worksheets.SingleOrDefault(x => x.Name == "Evaluation Warning");
                    excelPackage.Workbook.Worksheets.Delete(worksheet);
                    excelPackage.Save();
                }


Maciej Los

Рад видеть, что вы нашли решение. Похоже, вы действительно следовали инструкциям, приведенным в моем ответе. Правило СР ОК д-Это: отметить все ценные ответы, как решение. Могу я на тебя рассчитывать?

Рейтинг:
1

Karthik_Mahalingam

Счетчик 5! :)

Maciej Los

Спасибо, Картик.

Рейтинг:
1

Karthik_Mahalingam

пробовать Закрытый xml - csv в excel[^]
ClosedXML[^]


Maciej Los

5ed!

Karthik_Mahalingam

Спасибо Мацей :)