【ASP.NET C#】CSV 轉 Excel | Convert CSV to Excel (xls, xlsx)

想到讀 Excel 第一個直覺想到就是 NPOI
NPOI 好用雖好用, 但遇到「.csv」格式檔案也束手無策
除了可以用「LinqToCsv」, 「LINQ to CSV library」去讀取「.csv」檔

其實也可以透過微軟內建的Excel DLL檔案去進行轉換
前置作業需透過NuGet 安裝「Install-Package Microsoft.Office.Interop.Excel」
並確保環境需安裝MS Excel, 即可

string inputFilePath = @"C:\excelData.csv";
string outputFilePath = @"C:\excelData.xlsx";

// 開啟.csv, 並另存.xlsx
Microsoft.Office.Interop.Excel.Application app = new Microsoft.Office.Interop.Excel.Application();
Microsoft.Office.Interop.Excel.Workbook wb = app.Workbooks.Open(inputFilePath);
// Excel 2007 = xlOpenXMLWorkbook(.xlsx)
// Excel 2003 = xlExcel8(.xls)
wb.SaveAs(outputFilePath, Microsoft.Office.Interop.Excel.XlFileFormat.xlOpenXMLWorkbook);
wb.Close(false);
app.Quit();

 

留言

Top