在生產環境中測試,無水印。
在任何需要的地方都能運行。
獲得 30 天的全功能產品。
在幾分鐘內上手運行。
試用產品期間完全訪問我們的支援工程團隊
本篇文章將探討如何使用IronXL庫來創建一個C# CSV讀取器。
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。
要將 CSV 檔案中的數據轉換為 Excel 檔案並在 C# 中讀取,我們需要以下工具:
Visual Studio: 是一個必不可少的集成開發環境(IDE),用於開發 C# .NET 應用程式。 這是開發 C# 應用程式的官方及建議的整合開發環境(IDE),可以從Microsoft 網站下載並安裝。 然而,其他支持 C# 環境的 IDE 也可以根據開發者的偏好使用。
建立主控台應用程式:按照步驟建立一個簡單的主控台應用程式。
新專案視窗
建立新的控制台應用程式
配置
IronXL - 這是為處理 Excel 試算表而設計的 .NET Excel 庫。 在使用之前,必須在您的 C# 應用程式中安裝它。 您可以從多個來源下載和安裝此套件:
NuGet - .NET 的套件管理器。 您可以直接從NuGet 網站下載 IronXL。
Visual Studio NuGet 套件管理器:通過導航至 工具 > NuGet 套件管理器 > 為方案管理套件...** 打開套件管理器。
在具備先決條件後,下一步是將IronXL
命名空間添加到main.cs
文件的源代碼頂部:
using IronXL;
using IronXL;
Imports IronXL
IronXL 提供了一種在 C# 中讀取 CSV 文件的簡單方法。 首先,開啟 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:= ",")
IronXL 的 LoadCSV
方法允許您打開 CSV 文件並將其轉換為 XLSX 格式。 此方法提供選項以指定在 CSV 檔案中使用的列表分隔符。在此範例中,使用了預設的分隔符,即逗號。 生成的文件會被打開,並可以使用IronXL的功能進一步處理,以閱讀和操作Excel試算表。
CSV 檔案
在上一步中,CSV 檔案已使用 IronXL 作為 Excel 工作簿打開。 現在,使用 WorkSheet
類別從工作簿中獲取預設的工作表。 以下範例演示如何獲取用於讀取 CSV 數據的工作表:
WorkSheet ws = workbook.DefaultWorkSheet;
WorkSheet ws = workbook.DefaultWorkSheet;
Dim ws As WorkSheet = workbook.DefaultWorkSheet
欲了解更多有關處理 Excel 工作表的信息,您可以訪問此代碼範例頁面。
一旦成功載入 CSV 並且數據已可作為工作表使用,就可以很輕鬆地在 C# DataTable 中從 CSV 文件讀取數據。
首先,創建一個DataTable
實例,並使用ToDataTable
方法將工作表數據轉換為表格。 以下程式碼有助於完成此任務:
DataTable dt = ws.ToDataTable(true);
DataTable dt = ws.ToDataTable(true);
Dim dt As DataTable = ws.ToDataTable(True)
現在,使用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
在上述程式碼中,使用foreach
迴圈從多行集合中獲取單一記錄。 接著在嵌套的for迴圈中,計算列的數量,最後將每行的數據打印在螢幕上。 輸出格式類似於 CSV 文件。
輸出
本文演示了如何使用IronXL函式庫在C#中創建CSV讀取器。 使用 IronXL 加載 CSV 文件變得非常簡單,因為它在 Excel 試算表中支持 CSV 格式。 DataTable
物件用於建立優雅的 CSV 讀取器並格式化輸出以符合原始文件。
IronXL 還提供方便的不同檔案格式之間的轉換,並允許從頭創建 Excel 檔案,而不需要安裝 Interop 和 Microsoft Excel。 它也與 C# DataSet
和 DataTable
相容,為開發人員提供在不依賴第三方應用程式的情況下進行數據互轉的靈活性。 IronXL 具有強大的功能,對於 C# 開發人員來說,是處理 Excel 試算表和有效管理 CSV 數據的寶貴工具。
IronXL 在開發階段是免費的。 不過,對於商業用途,您需要購買其授權,價格從$749起。 您還可以使用其免費試用版來測試其編譯的 .dll 與您的專案在生產模式下的相容性。