使用IRONXL

如何在C#中讀取CSV文件

已更新 2024年3月24日
分享:

本篇文章將探討如何使用IronXL庫來創建一個C# CSV讀取器。

IronXL - Excel 資料庫

IronXL是一款強大的 Excel 庫,為 C# 開發者提供創建、加載、讀取和編輯各種格式的 Excel 試算表的能力。 專為 .NET 設計,IronXL 優先考慮速度、準確性和易用性。 它允許保存 Excel 檔案不同格式和載入各種類型的試算表格式進入 Excel 以高效讀取資料。

IronXL 支援具有不同檔案擴展名的 Excel 工作簿格式,包括 CSV 和 TSV、XLS 和 XLSX、XSLT 和 XLSM。 它與最新版本的 .NET Framework 兼容,以及所有之前的版本,直到 2.0。IronXL 可以在多種平台上使用,包括 Linux、MacOS、Azure、Docker 和 AWS。

如何使用 IronXL 在 C# 中製作 CSV 讀取器?

先決條件

要將 CSV 檔案中的數據轉換為 Excel 檔案並在 C# 中讀取,我們需要以下工具:

  1. Visual Studio: 是一個不可或缺的整合開發環境(集成開發環境)用於開發 C# .NET 應用程式。 它是開發 C# 應用程式的官方和推薦的集成開發環境,可以從Microsoft 網站. 然而,其他支持 C# 環境的 IDE 也可以根據開發者的偏好使用。

  2. 建立主控台應用程式: 遵循步驟來建立一個簡單的主控台應用程式。

    • 打開 Visual Studio,然後點擊「建立專案」。

      如何在C#中读取CSV文件,圖2:新建專案窗口

    新專案視窗

    • 從可用選項中選擇「控制台應用程式」。 確保選擇的語言是 C#。

      如何在 C# 中讀取 CSV 文件,圖 3:建立一個新的控制台應用程序

    創建新的 Console 應用

    • 接下來,將您的專案命名為您想要的名稱。

      如何在 C# 中读取 CSV 文件,图 4:配置

    配置

    • 專案配置的下一步是選擇 .NET Framework。 最新可用的版本是 .NET 7.0,它在標準期限內提供支援。 然而,為了避免任何潛在錯誤,您可以選擇更穩定的 .NET 6.0 版本,因為微軟提供長期支持。 根據您的特定需求選擇合適的版本很重要。
  3. IronXL - 它是專為處理 Excel 試算表而設計的 .NET Excel 庫。 在使用之前,必須在您的 C# 應用程式中安裝它。 您可以從多個來源下載和安裝此套件:

    1. NuGet - .NET 的套件管理器。 您可以直接從NuGet網站.

    2. Visual Studio NuGet 套件管理員:通過進入 工具 > NuGet 套件管理員 > 管理方案的套件... 打開套件管理器。

    3. 下載 IronXL.NET Excel DLL從 Iron 網站直接下載 zip 文件並將其作為專案參考添加到專案解決方案中。

添加 IronXL 命名空間

一旦具備先決條件,下一步是在 main.cs 檔案的程式碼頂部添加 IronXL 命名空間:

using IronXL;
using IronXL;
Imports IronXL
VB   C#

打開現有的 CSV 檔案

IronXL 提供了一種簡便的方法來讀取CSV檔案在 C# 中。 首先,開啟 CSV 檔案以供讀取。 它是一種基於行和列的文件類型。 這裡,Workbook類別與其一起使用LoadCSV打開 CSV 檔案的方法。代碼如下:

var csv = WorkBook.LoadCSV("color_srgb.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
var csv = WorkBook.LoadCSV("color_srgb.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
Dim csv = WorkBook.LoadCSV("color_srgb.csv", fileFormat:= ExcelFileFormat.XLSX, ListDelimiter:= ",")
VB   C#

IronXL 中的 LoadCSV 方法允許您打開 CSV 文件並將其轉換為 XLSX 格式。 此方法提供選項以指定在 CSV 檔案中使用的列表分隔符。在此範例中,使用了預設的分隔符,即逗號。 生成的文件會被打開,並可以使用IronXL的功能進一步處理,以閱讀和操作Excel試算表。

如何在C#中讀取CSV文件,圖5:CSV文件

CSV 檔案

從 CSV Reader 類獲取工作表

在上一步中,CSV 檔案已使用 IronXL 作為 Excel 工作簿打開。 現在,使用從活頁簿中獲取預設工作表工作表類別。 以下範例演示如何獲取用於讀取 CSV 數據的工作表:

WorkSheet ws = workbook.DefaultWorkSheet;
WorkSheet ws = workbook.DefaultWorkSheet;
Dim ws As WorkSheet = workbook.DefaultWorkSheet
VB   C#

如需有關操作 Excel 工作表的更多信息,您可以訪問此程式碼範例頁面.

使用 C# DataTable 讀取 CSV 資料

一旦成功載入 CSV 並且數據已可作為工作表使用,就可以很輕鬆地在 C# DataTable 中從 CSV 文件讀取數據。

工作表轉換為資料表

首先,創建一個 DataTable 實例,並使用ToDataTable方法。 以下程式碼有助於完成此任務:

DataTable dt = ws.ToDataTable(true);
DataTable dt = ws.ToDataTable(true);
Dim dt As DataTable = ws.ToDataTable(True)
VB   C#

開始讀取 CSV 數據

現在,使用 DataTable 實例迭代所有記錄。 資料以行和列的形式接收。 首先,然後遍歷每列以獲取其值。 若要獲取所有記錄以及標題行,請使用以下程式碼片段:

foreach (DataRow row in dt.Rows) //access rows
{
    for (int i = 0; i < dt.Columns.Count; i++) //access columns of corresponding row
    {
        Console.Write(row [i] + "  "); //format output 
    }
    Console.WriteLine();
}
foreach (DataRow row in dt.Rows) //access rows
{
    for (int i = 0; i < dt.Columns.Count; i++) //access columns of corresponding row
    {
        Console.Write(row [i] + "  "); //format output 
    }
    Console.WriteLine();
}
For Each row As DataRow In dt.Rows 'access rows
	For i As Integer = 0 To dt.Columns.Count - 1 'access columns of corresponding row
		Console.Write(row (i) & "  ") 'format output
	Next i
	Console.WriteLine()
Next row
VB   C#

在上述代碼中,使用 foreach 迴圈從資料列集合中獲取單一紀錄。 接著在嵌套的for迴圈中,計算列的數量,最後將每行的數據打印在螢幕上。 輸出格式類似於 CSV 文件。

如何在 C# 中讀取 CSV 檔案,圖 6:輸出

輸出

摘要

本文演示了如何使用IronXL函式庫在C#中創建CSV讀取器。 使用 IronXL 加載 CSV 文件變得非常簡單,因為它在 Excel 試算表中支持 CSV 格式。 DataTable 物件用於創建一個優雅的 CSV 閱讀器,並格式化輸出以匹配原始文件。

IronXL 也提供方便的不同檔案格式之間的轉換並允許從頭開始創建 Excel 文件而無需安裝 Interop 和 Microsoft Excel。 它還兼容 C# DataSetDataTable,為開發者提供在不依賴第三方應用程式的情況下,靈活地互轉數據的能力。 IronXL 具有強大的功能,對於 C# 開發人員來說,是處理 Excel 試算表和有效管理 CSV 數據的寶貴工具。

IronXL 在開發階段是免費的。 但是,用於商業用途時,您需要購買其許可證開始於 $749。 您也可以使用其免費試用以測試其編譯的 .dll 在生產模式下與您的項目兼容性。

< 上一頁
如何在C#中將數據集轉換為Excel
下一個 >
如何在 C# 中获取 Excel 文件中的单元格值

準備開始了嗎? 版本: 2024.11 剛剛發布

免費 NuGet 下載 總下載次數: 1,111,773 查看許可證 >