該篇就完全看 Code 理解囉
using Excel = Microsoft.Office.Interop.Excel;
namespace Utilities
{
public static class ExcelHelper
{
public static void XLSConvert(
string sourceFileFullName,
string destFileFullName)
{
Excel.Application excel = null;
Excel.Workbook workBook = null;
try
{
excel = new Excel.Application();
// 萬一目的地已經有同名檔案,不會出現詢問視窗
excel.DisplayAlerts = false;
// 開啟 xlsx 檔案
workBook = excel.Workbooks.Open(sourceFileFullName);
// Excel.XlFileFormat.xlExcel8 會產生 Excel97-2003 的 xls 格式
workBook.SaveAs(destFileFullName, Excel.XlFileFormat.xlExcel8);
// 關閉工作簿並退出 Excel 應用程式
workBook.Close();
excel.Quit();
}
catch (Exception)
{
throw;
}
finally
{
// 釋放 Excel COM 物件
if (workBook != null)
Marshal.ReleaseComObject(workBook);
if (excel != null)
Marshal.ReleaseComObject(excel);
}
}
}
}
實務上第一次操作 Microsoft.Office.Interop.Excel,要特別注意主動釋放 Unmanaged Excel COM 物件,要不然工作管理員內有會有一堆 Excel 殘留在系統內
沒有留言:
張貼留言