跳過到頁腳內容
使用 IRONXL

如何在 IronXL 中使用 .NET Core CSV 讀取器:實用範例

在 .NET Core 應用程式中處理 CSV 檔案操作是資料匯入和匯出操作的常見需求。 然而,開發人員在嘗試高效解析 CSV 檔案內容時,常會面臨不同分隔符、資料型別轉換以及效能問題等挑戰。 雖然已有如 CsvHelper 套件和 TextFieldParser 等用於 CSV 解析的函式庫,但並非所有函式庫都能提供具備強大例外處理能力的 Excel 互通性。 IronXL 是一款經過實戰驗證的 CSV 解析解決方案,可處理 CSV 與 Excel 兩種格式,並在大型批次處理情境中提供強大的效能。 本教學示範如何有效地使用 IronXL 作為 .NET Core CSV 讀取器,並提供實用、易於理解的範例,以高效解析 CSV 資料,包括非同步操作以提高應用程式的回應速度。 開發者為開源 CSV 工具貢獻改進或提交拉取請求時,也會發現 IronXL 清晰的 API 是一個有價值的參考,尤其是在管理包含重複值、重複條目或在資料匯入過程中需要資料驗證的資料集時。

在 .NET 生態系統中,有多種套件可處理 CSV 檔案操作,包括 EPPlus、NPOI 和 OpenXML 等替代方案,但 IronXL 的多功能性使其成為開發者的首選,特別是對於希望超越簡單的 CSV 讀取,並在單一 CSV 函式庫內享受 Excel 互通性的開發者——尤其適用於 Enterprise 應用程式的 ETL 作業和報表生成任務。 選擇合適的解析器取決於您的具體需求,因此本指南將引導您了解實際應用模式,協助您做出明智的決策。

如何使用 .NET Core CSV 讀取器 IronXL(附實際範例):圖 1 - IronXL

為何選擇 IronXL 作為您的 .NET Core CSV 讀取器?

在選擇 .NET Core CSV 讀取器時,IronXL 相較於傳統的 CSV 解析函式庫,具備多項顯著優勢。 IronXL 整合了 .NET Core 的現代化架構,同時維持與 .NET Framework 專案的向後相容性。 此解決方案可消除開發人員在處理 CSV 檔案時常面臨的痛點,包括:

  • 自動偵測國際字元集的編碼
  • 無需手動配置即可智慧識別分隔符
  • 對從千位元組到千兆位元組大小的檔案進行記憶體高效處理
  • 內建資料型別推斷和轉換
  • 跨平台的回車與換行處理 即使處理 CSV 資料,也支援 Excel 公式。
  • 在 Windows、Linux 和 macOS 上的跨平台可靠性

與需要大量設定和手動解析邏輯的基本 CSV 讀取工具不同,IronXL 能自動處理邊緣案例——例如包含分隔符的引號欄位、多行儲存格值以及特殊字元。 該函式庫的架構透過延遲載入與串流功能確保最佳效能,使其既適用於小型設定檔,也適用於大規模資料處理任務。 IronXL 可在需要時跳過標題列,並能高效地拆分複雜的資料結構。 請參閱 IronXL 功能概覽以了解更多資訊。

對於從傳統系統過渡到新系統的開發人員來說,IronXL 提供了一個熟悉的 API,降低了學習難度,同時為響應式應用程式提供了現代化的 async/await 模式。 這使其成為正在現代化其資料處理基礎架構的團隊的理想選擇。 請參閱完整的 IronXL 文件以獲取 API 參考與設定選項。

如何安裝 IronXL 來讀取 CSV 檔案?

無論您正在開發主控台應用程式、ASP.NET Core 網頁應用程式,還是 Windows Forms 應用程式,將 IronXL 安裝至您的 .NET Core 專案只需幾秒鐘。 要在 .NET Core 中高效解析 CSV 檔案並開始讀取 CSV 資料,請在 Visual Studio 中開啟套件管理器控制台並執行:

Install-Package IronXL.Excel
Install-Package IronXL.Excel
SHELL

或使用 .NET CLI:

dotnet add package IronXL.Excel
dotnet add package IronXL.Excel
SHELL

如何使用 .NET Core CSV 讀取器 IronXL(附實際範例):圖 2 - 安裝

或者,您也可以使用 NuGet 套件管理器 UI,搜尋"IronXL.Excel"並點選安裝。 此函式庫可在遷移至 .NET Core 時,與現有的 .NET Framework 專案進行整合。 您亦可直接從 IronXLNuGet 頁面進行引用。

安裝完成後,將命名空間新增到您的程式碼中:

using IronXL;
using IronXL;
Imports IronXL
$vbLabelText   $csharpLabel

此架構讓您無需依賴 Microsoft Office 或 Interop 即可使用強大的 CSV 讀取功能,非常適合雲端部署和 Docker 容器。 如需詳細的安裝說明與設定指南,請參閱 IronXL 安裝指南文件。

如何使用 IronXL 的 LoadCSV 方法讀取 CSV 檔案?

IronXL 的 LoadCSV 方法使 CSV 檔案處理變得簡單,它可以有效地處理 CSV 標題、CSV 列和 CSV 行,如下例所示:

// Load CSV file into a WorkBook object for .NET Core CSV reading
var workbook = WorkBook.LoadCSV("Budget.csv",
    fileFormat: ExcelFileFormat.XLSX,
    listDelimiter: ",");
// Access the default worksheet containing parsed CSV data
WorkSheet worksheet = workbook.DefaultWorkSheet;
// Read specific cell values with type-safe methods
string cellValue = worksheet["A1"].StringValue;
// Iterate through a range for bulk CSV data processing
foreach (var cell in worksheet["A1:C10"])
{
    Console.WriteLine($"Cell {cell.AddressString}: {cell.Text}");
}
// Load CSV file into a WorkBook object for .NET Core CSV reading
var workbook = WorkBook.LoadCSV("Budget.csv",
    fileFormat: ExcelFileFormat.XLSX,
    listDelimiter: ",");
// Access the default worksheet containing parsed CSV data
WorkSheet worksheet = workbook.DefaultWorkSheet;
// Read specific cell values with type-safe methods
string cellValue = worksheet["A1"].StringValue;
// Iterate through a range for bulk CSV data processing
foreach (var cell in worksheet["A1:C10"])
{
    Console.WriteLine($"Cell {cell.AddressString}: {cell.Text}");
}
Imports IronXL

' Load CSV file into a WorkBook object for .NET Core CSV reading
Dim workbook = WorkBook.LoadCSV("Budget.csv", fileFormat:=ExcelFileFormat.XLSX, listDelimiter:=",")

' Access the default worksheet containing parsed CSV data
Dim worksheet As WorkSheet = workbook.DefaultWorkSheet

' Read specific cell values with type-safe methods
Dim cellValue As String = worksheet("A1").StringValue

' Iterate through a range for bulk CSV data processing
For Each cell In worksheet("A1:C10")
    Console.WriteLine($"Cell {cell.AddressString}: {cell.Text}")
Next
$vbLabelText   $csharpLabel

LoadCSV 方法建立一個 WorkBook 對象,該物件使用最佳化的記憶體流處理在記憶體中表示您的 CSV 資料結構。 fileFormat 參數指定內部處理格式,而 listDelimiter 定義 CSV 檔案中使用的 CSV 分隔符號-支援製表符分隔的檔案和管道符號分隔的格式。

輸入與輸出

如何使用 .NET Core CSV 讀取器 IronXL(附實際範例):圖 5 - CSV 輸入範例

當處理從包含 sep= 行(有時稱為"分隔符號"標記)的系統匯出的 CSV 檔案時,IronXL 會智慧地讀取此元數據,以自動確定正確的分隔符號。 此功能可節省處理區域性 CSV 格式時所需的時間,這些格式可能使用分號、制表符或縱橫線(|)代替逗號,並確保跨字元集的編碼處理正確無誤。

預設的 WorkSheet 屬性可立即以工作表的形式存取已解析的 CSV 數據,從而實現逐單元格或基於範圍的數據提取。 您可以使用 StringValueIntValueDecimalValue 等屬性檢索值,以實現具有內建類型轉換的類型安全操作。 若需進行更複雜的資料處理與轉換,請探索 IronXL 的儲存格格式設定選項與範圍選取功能。

如何將 CSV 資料映射至具備資料驗證功能的 C# 類別?

您可以透過欄位映射和資料驗證,將 CSV 資料直接映射至 C# 物件。 舉例來說,假設有一個 CSV 檔案,其中包含"姓名"、"年齡"和"城市"這三個欄位。 請定義一個具有如下屬性映射的模型:

public record Customer(string Name, int Age, string City)
{
    public bool IsValid() => !string.IsNullOrEmpty(Name) && Age > 0;
}

// Parse CSV rows into typed objects
var customers = new List<Customer>();
for (int row = 2; row <= worksheet.RowCount; row++)
{
    var customer = new Customer(
        Name: worksheet[$"A{row}"].StringValue,
        Age:  worksheet[$"B{row}"].IntValue,
        City: worksheet[$"C{row}"].StringValue
    );
    if (customer.IsValid())
        customers.Add(customer);
}
// Output the records
foreach (var record in customers)
{
    Console.WriteLine($"Customer: {record.Name}, Age: {record.Age}, City: {record.City}");
}
public record Customer(string Name, int Age, string City)
{
    public bool IsValid() => !string.IsNullOrEmpty(Name) && Age > 0;
}

// Parse CSV rows into typed objects
var customers = new List<Customer>();
for (int row = 2; row <= worksheet.RowCount; row++)
{
    var customer = new Customer(
        Name: worksheet[$"A{row}"].StringValue,
        Age:  worksheet[$"B{row}"].IntValue,
        City: worksheet[$"C{row}"].StringValue
    );
    if (customer.IsValid())
        customers.Add(customer);
}
// Output the records
foreach (var record in customers)
{
    Console.WriteLine($"Customer: {record.Name}, Age: {record.Age}, City: {record.City}");
}
Imports System
Imports System.Collections.Generic

Public Class Customer
    Public Property Name As String
    Public Property Age As Integer
    Public Property City As String

    Public Sub New(name As String, age As Integer, city As String)
        Me.Name = name
        Me.Age = age
        Me.City = city
    End Sub

    Public Function IsValid() As Boolean
        Return Not String.IsNullOrEmpty(Name) AndAlso Age > 0
    End Function
End Class

' Parse CSV rows into typed objects
Dim customers As New List(Of Customer)()
For row As Integer = 2 To worksheet.RowCount
    Dim customer As New Customer(
        Name:=worksheet($"A{row}").StringValue,
        Age:=worksheet($"B{row}").IntValue,
        City:=worksheet($"C{row}").StringValue
    )
    If customer.IsValid() Then
        customers.Add(customer)
    End If
Next

' Output the records
For Each record In customers
    Console.WriteLine($"Customer: {record.Name}, Age: {record.Age}, City: {record.City}")
Next
$vbLabelText   $csharpLabel

透過 IronXL,工作表中的每一行都會映射為一個具型別的物件,可直接進行資料處理、序列化為 JSON,或匯出回其他格式,並具備完善的例外處理機制。 此方法可讓您以最少的重複程式碼,從 CSV 資料中建立強類型記錄。 如需更深入的說明,請參閱《C# 讀取 CSV 檔案指南》。

如何處理不同的分隔符並轉換為 DataTable?

實際的 CSV 檔案格式通常會使用逗號以外的各種分隔符,因此需要靈活的處理方式。 IronXL 透過自動分隔符偵測功能,優雅地處理了這一點:

// Load CSV with semicolon delimiter
WorkBook workbook = WorkBook.LoadCSV("products.csv",
    fileFormat: ExcelFileFormat.XLSX,
    listDelimiter: ";");
WorkSheet worksheet = workbook.DefaultWorkSheet;
// Convert to DataTable for database operations
DataTable dataTable = worksheet.ToDataTable(true);
// Process the DataTable
foreach (DataRow row in dataTable.Rows)
{
    Console.WriteLine($"Product: {row["ProductName"]}, Price: {row["Price"]}");
}
// Load CSV with semicolon delimiter
WorkBook workbook = WorkBook.LoadCSV("products.csv",
    fileFormat: ExcelFileFormat.XLSX,
    listDelimiter: ";");
WorkSheet worksheet = workbook.DefaultWorkSheet;
// Convert to DataTable for database operations
DataTable dataTable = worksheet.ToDataTable(true);
// Process the DataTable
foreach (DataRow row in dataTable.Rows)
{
    Console.WriteLine($"Product: {row["ProductName"]}, Price: {row["Price"]}");
}
Imports IronXL
Imports System.Data

' Load CSV with semicolon delimiter
Dim workbook As WorkBook = WorkBook.LoadCSV("products.csv", fileFormat:=ExcelFileFormat.XLSX, listDelimiter:=";")
Dim worksheet As WorkSheet = workbook.DefaultWorkSheet
' Convert to DataTable for database operations
Dim dataTable As DataTable = worksheet.ToDataTable(True)
' Process the DataTable
For Each row As DataRow In dataTable.Rows
    Console.WriteLine($"Product: {row("ProductName")}, Price: {row("Price")}")
Next
$vbLabelText   $csharpLabel

ToDataTable 方法將工作表資料轉換為 .NET DataTable,布林參數指示是否使用第一行作為列標題。 這種轉換對於資料庫操作、ASP.NET Core 應用程式中的資料綁定,或當您需要應用現有的 DataTable 處理邏輯進行 SQL Server 整合時,尤其有用。 產生的 DataTable 保留資料類型和模式信息,可以直接與 SqlBulkCopy 一起使用,以進行高效的批量插入操作。

請參閱詳細指南,進一步了解如何將 CSV 匯入 DataTable 以及資料庫整合

如何將 DataTable 匯出回 CSV 檔案?

DataTable 中處理完資料後,您通常需要將結果寫回 CSV 檔案。 IronXL 也支援這種雙向寫入:

// Load a DataTable from your data source
DataTable exportTable = GetProcessedData(); // your data source method

// Create a new workbook and populate it from the DataTable
WorkBook outputWorkbook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet outputSheet = outputWorkbook.DefaultWorkSheet;

// Write headers from DataTable columns
for (int col = 0; col < exportTable.Columns.Count; col++)
{
    outputSheet[0, col].Value = exportTable.Columns[col].ColumnName;
}

// Write rows
for (int row = 0; row < exportTable.Rows.Count; row++)
{
    for (int col = 0; col < exportTable.Columns.Count; col++)
    {
        outputSheet[row + 1, col].Value = exportTable.Rows[row][col]?.ToString();
    }
}

// Save as CSV
outputWorkbook.SaveAsCsv("output.csv", delimiter: ",");
Console.WriteLine("Export complete.");
// Load a DataTable from your data source
DataTable exportTable = GetProcessedData(); // your data source method

// Create a new workbook and populate it from the DataTable
WorkBook outputWorkbook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet outputSheet = outputWorkbook.DefaultWorkSheet;

// Write headers from DataTable columns
for (int col = 0; col < exportTable.Columns.Count; col++)
{
    outputSheet[0, col].Value = exportTable.Columns[col].ColumnName;
}

// Write rows
for (int row = 0; row < exportTable.Rows.Count; row++)
{
    for (int col = 0; col < exportTable.Columns.Count; col++)
    {
        outputSheet[row + 1, col].Value = exportTable.Rows[row][col]?.ToString();
    }
}

// Save as CSV
outputWorkbook.SaveAsCsv("output.csv", delimiter: ",");
Console.WriteLine("Export complete.");
Imports System.Data

' Load a DataTable from your data source
Dim exportTable As DataTable = GetProcessedData() ' your data source method

' Create a new workbook and populate it from the DataTable
Dim outputWorkbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
Dim outputSheet As WorkSheet = outputWorkbook.DefaultWorkSheet

' Write headers from DataTable columns
For col As Integer = 0 To exportTable.Columns.Count - 1
    outputSheet(0, col).Value = exportTable.Columns(col).ColumnName
Next

' Write rows
For row As Integer = 0 To exportTable.Rows.Count - 1
    For col As Integer = 0 To exportTable.Columns.Count - 1
        outputSheet(row + 1, col).Value = exportTable.Rows(row)(col)?.ToString()
    Next
Next

' Save as CSV
outputWorkbook.SaveAsCsv("output.csv", delimiter:=","c)
Console.WriteLine("Export complete.")
$vbLabelText   $csharpLabel

此模式非常適用於 ETL 管線,其中資料會先載入、轉換,然後寫入新檔案。如需其他匯出格式,請參閱 C# 匯出至 CSV 教學指南以及 DataTable 匯出至 Excel 指南

如何進行CSV和Excel格式之間的轉換?

IronXL 的突出功能之一是 CSV 轉 Excel 以及 Excel 轉 CSV 的轉換功能,這對於資料遷移專案至關重要。 以下範例示範了此功能:

// Load CSV and save as Excel
WorkBook csvWorkbook = WorkBook.LoadCSV("report.csv",
    fileFormat: ExcelFileFormat.XLSX,
    listDelimiter: ",");
// Save as Excel file
csvWorkbook.SaveAs("report.xlsx");
// Or load Excel and export to CSV
WorkBook excelWorkbook = WorkBook.Load("data.xlsx");
excelWorkbook.SaveAsCsv("exported_data.csv", delimiter: ",");
// Load CSV and save as Excel
WorkBook csvWorkbook = WorkBook.LoadCSV("report.csv",
    fileFormat: ExcelFileFormat.XLSX,
    listDelimiter: ",");
// Save as Excel file
csvWorkbook.SaveAs("report.xlsx");
// Or load Excel and export to CSV
WorkBook excelWorkbook = WorkBook.Load("data.xlsx");
excelWorkbook.SaveAsCsv("exported_data.csv", delimiter: ",");
Imports IronXL

' Load CSV and save as Excel
Dim csvWorkbook As WorkBook = WorkBook.LoadCSV("report.csv", fileFormat:=ExcelFileFormat.XLSX, listDelimiter:=",")

' Save as Excel file
csvWorkbook.SaveAs("report.xlsx")

' Or load Excel and export to CSV
Dim excelWorkbook As WorkBook = WorkBook.Load("data.xlsx")
excelWorkbook.SaveAsCsv("exported_data.csv", delimiter:=",")
$vbLabelText   $csharpLabel

這種雙向轉換既能保持資料完整性,又能為各種文件轉換場景提供格式彈性。 SaveAs 方法會自動從檔案副檔名偵測所需的格式,支援 XLSX、XLS 和其他 Excel 格式以及工作表管理。 使用 SaveAsCsv 儲存為 CSV 時,您可以指定自訂分隔符號和文字編碼以滿足您的要求。

當與需要特定文件格式進行資料交換的系統整合時,此功能非常寶貴。 對於從其他程式庫遷移或評估手動解析替代方案的開發人員,請參閱Stack Overflow 上討論的 IronXL 與流行的替代方案的比較,以及.NET 社群中的效能考量。 如需更多檔案格式轉換範例,請參閱 Excel 試算表轉換指南

如何在不引發記憶體問題的情況下讀取大型 CSV 檔案?

處理大型 CSV 檔案(即包含數百萬行資料的檔案)時,必須謹慎處理記憶體管理。 IronXL 內部採用延遲載入機制,這意味著工作表的列會根據需求逐行讀取,而非一次性全部載入。 為在迭代大型資料集時保持低記憶體使用量,請分批處理資料列:

WorkBook workbook = WorkBook.LoadCSV("large-dataset.csv",
    fileFormat: ExcelFileFormat.XLSX,
    listDelimiter: ",");
WorkSheet worksheet = workbook.DefaultWorkSheet;

int batchSize = 1000;
int totalRows = worksheet.RowCount;

for (int start = 1; start <= totalRows; start += batchSize)
{
    int end = Math.Min(start + batchSize - 1, totalRows);
    for (int row = start; row <= end; row++)
    {
        string id   = worksheet[$"A{row}"].StringValue;
        string name = worksheet[$"B{row}"].StringValue;
        // Process each record here
        Console.WriteLine($"Row {row}: {id} - {name}");
    }
    Console.WriteLine($"Processed batch {start}-{end}");
}
WorkBook workbook = WorkBook.LoadCSV("large-dataset.csv",
    fileFormat: ExcelFileFormat.XLSX,
    listDelimiter: ",");
WorkSheet worksheet = workbook.DefaultWorkSheet;

int batchSize = 1000;
int totalRows = worksheet.RowCount;

for (int start = 1; start <= totalRows; start += batchSize)
{
    int end = Math.Min(start + batchSize - 1, totalRows);
    for (int row = start; row <= end; row++)
    {
        string id   = worksheet[$"A{row}"].StringValue;
        string name = worksheet[$"B{row}"].StringValue;
        // Process each record here
        Console.WriteLine($"Row {row}: {id} - {name}");
    }
    Console.WriteLine($"Processed batch {start}-{end}");
}
Imports System

Dim workbook As WorkBook = WorkBook.LoadCSV("large-dataset.csv", fileFormat:=ExcelFileFormat.XLSX, listDelimiter:=",")
Dim worksheet As WorkSheet = workbook.DefaultWorkSheet

Dim batchSize As Integer = 1000
Dim totalRows As Integer = worksheet.RowCount

For start As Integer = 1 To totalRows Step batchSize
    Dim [end] As Integer = Math.Min(start + batchSize - 1, totalRows)
    For row As Integer = start To [end]
        Dim id As String = worksheet($"A{row}").StringValue
        Dim name As String = worksheet($"B{row}").StringValue
        ' Process each record here
        Console.WriteLine($"Row {row}: {id} - {name}")
    Next
    Console.WriteLine($"Processed batch {start}-{end}")
Next
$vbLabelText   $csharpLabel

此技術可確保堆記憶體分配的可預測性,並避免在處理大型資料集時發生記憶體不足的錯誤。 匯出時亦遵循相同模式——逐行寫入,並於最後一次儲存。 如需更多提示,請參閱檔案大小限制指南

IronXL 為企業級 CSV 處理提供了哪些進階功能?

IronXL 提供 Enterprise 級功能,使其有別於基礎的 CSV 解析器,包括單元測試支援與除錯工具。 此函式庫具備跨平台相容性,可在 Windows、Linux、macOS 及 Docker 容器中運行——這對於現代 .NET Core 部署與微服務架構至關重要。 根據微軟的文檔,跨平台支援對於雲端原生應用程式和 Azure 部署至關重要。

除了技術能力之外,IronXL 的所有許可證均包含專業支援和定期更新,確保與最新的 .NET 版本和安全修補程式相容。 這種商業支援確保了關鍵任務應用程式的可靠性,而開源庫在生產環境中可能無法滿足這些需求。 該函式庫透過優化的記憶體管理,能高效處理大型資料集,並支援以下進階情境:

IronXL 進階功能摘要
特點 描述 用例
公式計算 在匯入 CSV 資料後評估 Excel 公式 財務報告、彙總
保留儲存格格式 轉換時請保留數字格式與日期格式 會計匯出、日期敏感資料
多工作表工作簿操作 將多個 CSV 檔案合併為一個工作簿,並包含命名的工作表 月度報告彙整
資料聚合 跨區間的 SUM、AVERAGE、COUNT 儀表板生成、KPI 計算
範圍排序 依一個或多個欄位對資料列進行排序 排序輸出、按字母順序匯出

對於需要可擴展性和負載平衡的生產環境部署,IronXL 的授權模式提供高度靈活性,包含單一專案、團隊及全企業級使用方案——所有方案均包含原始碼存取權限與免版稅的再分發權。 購買授權即可解鎖完整功能,並移除浮水印。

如何使用 .NET Core CSV 讀取器 IronXL(附實際範例):圖 10 - 許可

如何套用授權金鑰?

購買後,請在呼叫任何 IronXL 方法之前先套用您的授權金鑰:

// Apply license key at application startup
IronXL.License.LicenseKey = "YOUR-LICENSE-KEY-HERE";

// Then proceed with CSV reading as normal
WorkBook workbook = WorkBook.LoadCSV("data.csv",
    fileFormat: ExcelFileFormat.XLSX,
    listDelimiter: ",");
WorkSheet worksheet = workbook.DefaultWorkSheet;
Console.WriteLine($"Loaded {worksheet.RowCount} rows from CSV.");
// Apply license key at application startup
IronXL.License.LicenseKey = "YOUR-LICENSE-KEY-HERE";

// Then proceed with CSV reading as normal
WorkBook workbook = WorkBook.LoadCSV("data.csv",
    fileFormat: ExcelFileFormat.XLSX,
    listDelimiter: ",");
WorkSheet worksheet = workbook.DefaultWorkSheet;
Console.WriteLine($"Loaded {worksheet.RowCount} rows from CSV.");
' Apply license key at application startup
IronXL.License.LicenseKey = "YOUR-LICENSE-KEY-HERE"

' Then proceed with CSV reading as normal
Dim workbook As WorkBook = WorkBook.LoadCSV("data.csv", fileFormat:=ExcelFileFormat.XLSX, listDelimiter:=",")
Dim worksheet As WorkSheet = workbook.DefaultWorkSheet
Console.WriteLine($"Loaded {worksheet.RowCount} rows from CSV.")
$vbLabelText   $csharpLabel

將許可證金鑰分配放在應用程式的最早入口點——通常是頂級語句項目中的 Program.cs——以確保所有後續呼叫都已獲得完全許可。 如需逐步操作說明,請參閱 IronXL 授權金鑰指南

如何開始免費試用?

IronXL 簡化了 .NET Core 應用程式中的 CSV 讀取和寫入操作,同時提供了處理複雜場景的靈活性,包括資料分析、報告和自動化任務。 其直觀的 API,結合對 Excel 格式的支援與 Enterprise 級功能,使其成為開發者的可靠選擇,尤其適合需要具備經實證的 CSV 處理能力,並支援執行緒安全與並發存取的開發者。 該函式庫具備格式轉換、處理各種分隔符、執行資料清理以及與現有 .NET 資料結構整合的能力,不僅能顯著縮短開發時間,同時確保程式碼易於維護。

準備好開始處理 CSV 檔案了嗎? 立即下載 IronXL 免費試用版,親身體驗此程式庫如何透過專業級的 CSV 解析功能,徹底改變您的資料處理工作流程。 若用於正式生產環境,請探索包含專業技術支援、文件資源及持續更新的授權方案,以支援您的 .NET 專案。

延伸閱讀資源:

常見問題解答

IronXL 為何是 .NET Core 中 CSV 處理的理想選擇?

IronXL 可無縫處理 CSV 和 Excel 格式,具有強大的異常處理能力和卓越的效能最佳化,尤其適用於大規模批量處理場景。

IronXL在讀取CSV檔案時如何提高效能?

IronXL 針對大規模批量處理進行了最佳化,能夠流暢地處理不同的分隔符號和資料類型轉換,從而確保高效的 CSV 檔案操作。

IronXL 能否處理 CSV 檔案中不同的分隔符號?

是的,IronXL 可以有效地處理具有各種分隔符的 CSV 文件,使其能夠靈活地應用於不同的資料匯入和匯出場景。

IronXL 是否支援 CSV 處理的非同步操作?

IronXL 支援非同步操作,透過允許非阻塞操作來增強 CSV 解析期間的應用程式回應能力。

IronXL 如何協助為開源 CSV 工具做出貢獻的開發者?

IronXL 提供了一個清晰的 API,對於開發人員來說是一個有價值的參考,尤其是在處理包含重複值、重複條目或需要資料驗證的資料集時。

與其他 CSV 解析庫相比,使用 IronXL 有哪些優勢?

IronXL 的優勢在於其與 Excel 的互通性、強大的異常處理能力和增強的效能,使其成為比 CsvHelper 和 TextFieldParser 等函式庫更全面的解決方案。

IronXL 能否用於 CSV 導入過程中的資料驗證?

是的,IronXL 的功能包括資料驗證,這在資料匯入過程中管理具有重複條目或重複值的資料集時特別有用。

IronXL 與 .NET Core 應用程式相容嗎?

當然,IronXL 旨在與 .NET Core 應用程式無縫集成,為 CSV 讀取和處理提供可靠的解決方案。

Jordi Bardia
軟體工程師
Jordi 在 Python、C# 和 C++ 上最得心應手,當他不在 Iron Software 展現技術時,便在做遊戲編程。在分担產品测测试,產品開發和研究的责任時,Jordi 為持续的產品改進增值。他说这种多样化的经验使他受到挑战并保持参与, 而这也是他与 Iron Software 中工作一大乐趣。Jordi 在佛罗里达州迈阿密长大,曾在佛罗里达大学学习计算机科学和统计学。

鋼鐵支援團隊

我們每週 5 天,每天 24 小時在線上。
聊天
電子郵件
打電話給我