使用 IRONXL 如何在 C# 中將 `DataTable` 匯出為 CSV Jordi Bardia 更新:2026年1月19日 下載 IronXL NuGet 下載 DLL 下載 開始免費試用 LLM副本 LLM副本 將頁面複製為 Markdown 格式,用於 LLMs 在 ChatGPT 中打開 請向 ChatGPT 諮詢此頁面 在雙子座打開 請向 Gemini 詢問此頁面 在 Grok 中打開 向 Grok 詢問此頁面 打開困惑 向 Perplexity 詢問有關此頁面的信息 分享 在 Facebook 上分享 分享到 X(Twitter) 在 LinkedIn 上分享 複製連結 電子郵件文章 IronXL能夠在 C# 中實現無縫 DataTable 到 CSV 的轉換,而無需安裝 Microsoft Excel。 這個獨立的.NET函式庫提供了一個簡單的 API,可以自動將 DataTables 轉換為具有自訂結構和分隔符號的 CSV 文件,使開發人員能夠輕鬆地匯出資料。 IronXL是一個流行的庫,它允許開發人員在 C# .NET技術中與Microsoft Excel 文件(包括 CSV 文件)進行交互,而無需安裝 Microsoft Excel。 它能夠自動將已註冊的類型轉換為 CSV 文件,並能夠使用自訂結構寫入 CSV 文件。 IronXL Library 提供哪些功能? 使用 C# IronXL .NET庫可以讀取Microsoft Excel 文件並將其轉換為 CSV 檔案。 IronXL是一個獨立的.NET軟體庫,可以讀取各種電子表格格式。 它不依賴 Microsoft.Office.Interop.Excel,也不需要安裝 Microsoft Excel。 透過IronXL的用戶友好型 C# API ,您可以在.NET環境中快速讀取、修改和建立 Excel 電子表格檔案。 IronXL完全支援.NET Core、 .NET Framework 、Xamarin、行動平台、 Linux 、 macOS和Azure 。 領先的.NET Core和.NET Framework Excel 電子表格庫(適用於 C#)包括IronXL。 幾乎所有.NET Framework 版本都受支持,包括控制台應用程式、Windows 窗體應用程式和 Web 應用程式。 IronXL可在 Windows、Linux 和 macOS 作業系統上運作。 IronXL讓讀取 Excel 檔案變得簡單快速。 IronXL支援多種 Excel 格式:XLSX、XLS、CSV、TSV、XLST 和 XLSM 檔案。 IronXL可將檔案匯出為多種格式,包括 XLS、CSV、TSV、JSON 和 XML。 IronXL可產生 Excel 計算結果並支援公式。 IronXL支援 Excel 列資料格式,包括文字、數字、日期、貨幣和百分比。 更多詳情請瀏覽IronXL文件概述。 如何在 Visual Studio 中建立新專案? 在 Visual Studio 中,必須先建立一個.NET項目,然後才能使用IronXL框架。 任何版本的 Visual Studio 都可以使用,但建議使用最新版本。 根據您的需要,您可以建立 Windows 窗體應用程式或不同的專案範本。 為了簡單起見,本教學將使用控制台應用程式。 Visual Studio 的"建立新專案"對話方塊顯示了各種.NET專案模板,包括控制台應用程式、 ASP.NET Core Web 應用程式和Blazor伺服器應用程式選項。 在 Visual Studio 中建立一個新項目 之後,輸入項目名稱和地點。 配置新項目 接下來,選擇以下結構。 本專案將使用.NET Core 6。 選擇.NET Framework版本 應用程式產生解決方案後,將開啟 program.cs 文件,以便您可以輸入程式碼並建置/執行應用程式。 新建立的控制台應用程式項目 然後就可以新增該庫並使用它來評估程式碼。 對於其他項目類型,例如.NET MAUI應用程式或VB .NET項目,該過程類似,但需要考慮框架特定的因素。 如何安裝IronXL庫? 下載和安裝IronXL庫有四種方法。 其中包括: 透過 Visual Studio 安裝 使用 Visual Studio 套件管理器控制台進行安裝 直接從NuGet網站下載 直接從IronXL網站下載 我該用哪一種方法安裝 Visual Studio? 使用NuGet套件管理器可以安裝IronXL模組。 要找到IronXL,您必須先啟動NuGet套件管理器,然後在瀏覽窗格中尋找。 從搜尋結果中選擇IronXL進行安裝。 之後, IronXL庫就可以使用這個應用程式了。 下圖示範如何啟動 Visual Studio 的NuGet套件管理器。 導航至NuGet套件管理器 在NuGet套件管理器 UI 中安裝IronXL套件 何時應該使用軟體包管理器控制台? 許多開發者喜歡使用控制台來執行任務。 因此,終端安裝也是一種選擇。 若要使用命令列安裝IronXL ,請依照下列說明操作。 在 Visual Studio 中,導覽至"工具" > "NuGet套件管理器" >"套件管理器介面"。 在軟體包管理器的控制台標籤中輸入以下命令: Install-Package IronXL.Excel 等待IronXL下載並安裝到目前專案中。 在軟體套件管理器控制台介面中安裝IronXL軟體包 我為什麼要從NuGet網站下載? 第三種選擇是直接從網站下載NuGet套件。 當網路存取受限或需要手動管理軟體包時,此方法尤其有用。 訪問官方NuGet連結。 下載軟體包選項位於右側選單中。 雙擊已儲存的文件,即可立即安裝。 之後重新載入解決方案,並開始在專案中使用它。 如何直接從IronXL網站安裝? 若要直接從網站下載最新軟體包,請點擊此連結下載IronXL ZIP 檔案。 此連結將下載包含最新版本IronXL庫 DLL 的 ZIP 檔案。 下載完成後,將 ZIP 檔案的內容解壓縮到您選擇的任意目錄。 下載檔案後,要將其新增至專案中,請按照下列步驟操作。 在解決方案視窗中,右鍵點選項目。 選擇"引用",然後導航至包含IronXL DLL 的已解壓縮資料夾。 選擇 DLL,然後按一下"確定"將其作為參考新增至活動項目。 對於部署方案,您也可以將IronXL設定在 Docker 容器中,或部署到AWS Lambda和Azure Functions等雲端平台。 如何將 DataTable 匯出到 CSV 檔案? 使用IronXL可以輕鬆快速地將 DataTables匯出到 CSV 檔案。 它支援自訂分隔符號和編碼選項,幫助將資料寫入新的 CSV 檔案。 首先,如下面的程式碼影像所示,應包含IronXL命名空間才能使用IronXL類別和方法。 新增通用命名空間 可以使用IronXL建立 Excel 文件,然後將其轉換為WorkBook物件。 然後對這些物件執行各種操作。 下面的範例程式碼將透過將 DataTable 轉換為 Excel 工作表來建立 Excel 檔案。 using IronXL; using System.Data; // Entry point of the application static void Main(string[] args) { // Specify the file path for the CSV file output ExportToExcel("H:\\test.csv"); } // Exports the DataTable to an Excel file and saves it as CSV public static void ExportToExcel(string filepath) { // Create a DataTable and add columns and rows DataTable table = new DataTable(); table.Columns.Add("DataSet_Fruits", typeof(string)); table.Rows.Add("Apple"); table.Rows.Add("Orange"); table.Rows.Add("Strawberry"); table.Rows.Add("Grapes"); table.Rows.Add("Watermelon"); table.Rows.Add("Bananas"); table.Rows.Add("Lemons"); // Create a new WorkBook and add the DataTable data to it WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS); var writer = wb.DefaultWorkSheet; int rowCount = 1; foreach (DataRow row in table.Rows) { // Write each item from the DataTable into the worksheet starting from cell A1 writer["A" + (rowCount)].Value = row[0].ToString(); rowCount++; } // Save the workbook as a CSV file with a specified delimiter wb.SaveAsCsv(filepath, ";"); } using IronXL; using System.Data; // Entry point of the application static void Main(string[] args) { // Specify the file path for the CSV file output ExportToExcel("H:\\test.csv"); } // Exports the DataTable to an Excel file and saves it as CSV public static void ExportToExcel(string filepath) { // Create a DataTable and add columns and rows DataTable table = new DataTable(); table.Columns.Add("DataSet_Fruits", typeof(string)); table.Rows.Add("Apple"); table.Rows.Add("Orange"); table.Rows.Add("Strawberry"); table.Rows.Add("Grapes"); table.Rows.Add("Watermelon"); table.Rows.Add("Bananas"); table.Rows.Add("Lemons"); // Create a new WorkBook and add the DataTable data to it WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS); var writer = wb.DefaultWorkSheet; int rowCount = 1; foreach (DataRow row in table.Rows) { // Write each item from the DataTable into the worksheet starting from cell A1 writer["A" + (rowCount)].Value = row[0].ToString(); rowCount++; } // Save the workbook as a CSV file with a specified delimiter wb.SaveAsCsv(filepath, ";"); } $vbLabelText $csharpLabel 上述程式碼將 DataTable 匯出到 Excel 檔案。建立 DataTable 後,會自動建立列標題。 然後,在確定第一列之後,逐行新增後續行。 在向 DataTable 物件新增列和行以保存這些資料之後,建立 WorkBook 物件。 然後建構WorkSheet對象,並將其加入到 WorkBook 物件中。 使用 DataTable 循環讀取並新增 foreach 中的每個值,然後再將該值加到 WorkSheet 中。 將所有值加入工作表後, SaveAsCsv方法會將它們儲存到 CSV 檔案中。您可以將分隔符號和檔案位置都指定為參數。 對於更複雜的場景,您可能需要將多個資料表匯出為不同的工作表,或使用資料集進行更結構化的資料組織。 使用不同的 CSV 格式 IronXL在處理 CSV 檔案時提供了靈活性。 以下範例展示如何匯出帶有自訂格式和編碼的 DataTable: // Export with custom delimiter and encoding public static void ExportToCSVWithOptions(DataTable dataTable, string filepath) { // Create workbook from DataTable WorkBook wb = WorkBook.Create(ExcelFileFormat.XLSX); WorkSheet ws = wb.CreateWorkSheet("DataExport"); // Add headers for (int i = 0; i < dataTable.Columns.Count; i++) { ws[$"{(char)('A' + i)}1"].Value = dataTable.Columns[i].ColumnName; } // Add data rows for (int row = 0; row < dataTable.Rows.Count; row++) { for (int col = 0; col < dataTable.Columns.Count; col++) { ws[$"{(char)('A' + col)}{row + 2}"].Value = dataTable.Rows[row][col]; } } // Save with custom delimiter (comma) and UTF-8 encoding wb.SaveAsCsv(filepath, ",", System.Text.Encoding.UTF8); } // Export with custom delimiter and encoding public static void ExportToCSVWithOptions(DataTable dataTable, string filepath) { // Create workbook from DataTable WorkBook wb = WorkBook.Create(ExcelFileFormat.XLSX); WorkSheet ws = wb.CreateWorkSheet("DataExport"); // Add headers for (int i = 0; i < dataTable.Columns.Count; i++) { ws[$"{(char)('A' + i)}1"].Value = dataTable.Columns[i].ColumnName; } // Add data rows for (int row = 0; row < dataTable.Rows.Count; row++) { for (int col = 0; col < dataTable.Columns.Count; col++) { ws[$"{(char)('A' + col)}{row + 2}"].Value = dataTable.Rows[row][col]; } } // Save with custom delimiter (comma) and UTF-8 encoding wb.SaveAsCsv(filepath, ",", System.Text.Encoding.UTF8); } $vbLabelText $csharpLabel 這種方法可以讓你更好地控制匯出過程,讓你設定單元格資料格式並自訂輸出結構。 輸出的 CSV 檔案 上面顯示的是運行程式碼範例的輸出結果。 在截圖中,資料表中的每一個資料都被單獨加入到新產生的 Excel 表格中。 您也可以在匯出之前對儲存格套用格式,或新增公式以計算值。 對於更進階的 CSV 操作,您可以: -讀取帶有自訂分隔符號的 CSV 文件 以特定編碼寫入 CSV 文件 -在不同的電子表格格式之間進行轉換 -匯出為 JSON 或 XML格式 要了解有關IronXL教程的更多信息,請點擊此鏈接以了解如何匯出到 Excel 格式。 為什麼我應該使用IronXL進行 CSV 匯出? IronXL是Excel中最受歡迎的工具之一。 它不依賴任何其他外部來源的函式庫。 它是獨立運作的,無需安裝微軟Excel。 它透過多個管道運作。 IronXL提供了一個一體化解決方案,以程式設計方式實現所有與 Microsoft Excel 文件相關的任務。 您可以執行公式計算、字串或數字排序、修剪和追加、尋找和取代、合併和取消合併、儲存檔案等操作。您也可以設定儲存格資料格式並驗證電子表格資料。 它還支援讀寫 CSV 文件,幫助您像處理 Excel 資料一樣處理資料。 其他福利包括: 敏感資料匯出密碼保護 針對大型資料集的效能最佳化 支援在匯出為 CSV 檔案之前在 Excel 中進行條件格式設定 支援命名範圍和命名表 以支援的格式保留超鏈接 IronXL 的上市起價為 $799。 它還為用戶提供支付一年訂閱費以獲得產品支援和更新的選項。 IronXL提供額外付費的無限再分送安全保障。 如需了解更詳細的定價信息,請訪問此許可頁面。 常見問題解答 如何在 C# 中將 DataTable 匯出為 CSV 文件? 您可以使用 IronXL 匯出 DataTable 至 CSV 文件,通過創建 WorkBook 並將數據匯入工作表對象中。這可實現無縫轉換和匯出,無需微軟 Excel。 我可以使用此庫匯出什麼文件格式? IronXL 允許將數據匯出為多種格式,如 XLS、CSV、TSV 和 JSON,提供處理不同數據需求的靈活性。 是否可以使用此庫執行類似 Excel 的操作? 是的,IronXL 支援類似 Excel 的操作,例如公式計算、數據排序和文件保存,是一個全面的 Excel 相關編程任務工具。 我需要安裝 Microsoft Excel 才能使用此庫嗎? 不需要,IronXL 是一個獨立的 .NET 庫,不需要安裝 Microsoft Excel,允許開發者直接在 C# 應用程式中處理 Excel 文件。 此庫與哪些平台相容? IronXL 與多個平台相容,包括 .NET Core、.NET Framework、Xamarin,以及操作系統如 Windows、Linux 和 macOS。 如何在我的專案中安裝 IronXL 庫? 可以在 .NET 專案中使用 Visual Studio 安裝 IronXL,透過訪問 NuGet 套件管理器或從 NuGet 或 IronXL 網站直接下載。 有哪些價位選項可用於此庫? IronXL 提供起始價,選項包含一年的訂閱,提供產品協助和更新,從而提供持續支持和獲取最新功能。 Jordi Bardia 立即與工程團隊聊天 軟體工程師 Jordi 在 Python、C# 和 C++ 上最得心應手,當他不在 Iron Software 展現技術時,便在做遊戲編程。在分担產品测测试,產品開發和研究的责任時,Jordi 為持续的產品改進增值。他说这种多样化的经验使他受到挑战并保持参与, 而这也是他与 Iron Software 中工作一大乐趣。Jordi 在佛罗里达州迈阿密长大,曾在佛罗里达大学学习计算机科学和统计学。 相關文章 更新2026年3月1日 在ASP.NET C#中下載Excel文件:將數據匯出到XLSX,CSV和更多格式 使用C#和IronXL在ASP.NET Core中下載Excel文件。從MVC控制器中匯出數據到XLSX, CSV和XML,附有MemoryStream和File()返回。包括代碼範例。 閱讀更多 更新2026年3月1日 如何在Blazor中使用IronXL匯出Excel文件 學習如何在Blazor伺服器應用程式中使用IronXL将數據匯出到Excel。此指南涵蓋專案設置、服務設計、條件格式化、多表報告和錯誤處理,附有完整的C#代碼範例。 閱讀更多 更新2026年2月27日 如何在C#中而不是使用StreamReader來讀取Excel文件 了解StreamReader為何無法讀取Excel文件,並學習如何使用IronXL加載來自磁盤或內存流的XLSX和XLS工作簿。 閱讀更多 如何在 C# 從 Excel 文件中獲取單元格值如何在 C# 中導入 Excel 文件
更新2026年3月1日 在ASP.NET C#中下載Excel文件:將數據匯出到XLSX,CSV和更多格式 使用C#和IronXL在ASP.NET Core中下載Excel文件。從MVC控制器中匯出數據到XLSX, CSV和XML,附有MemoryStream和File()返回。包括代碼範例。 閱讀更多
更新2026年3月1日 如何在Blazor中使用IronXL匯出Excel文件 學習如何在Blazor伺服器應用程式中使用IronXL将數據匯出到Excel。此指南涵蓋專案設置、服務設計、條件格式化、多表報告和錯誤處理,附有完整的C#代碼範例。 閱讀更多
更新2026年2月27日 如何在C#中而不是使用StreamReader來讀取Excel文件 了解StreamReader為何無法讀取Excel文件,並學習如何使用IronXL加載來自磁盤或內存流的XLSX和XLS工作簿。 閱讀更多