如何在C#中載入現有試算表

如何在C#中載入現有的試算表

This article was translated from English: Does it need improvement?
Translated
View the article in English

載入現有的Excel、CSV、TSV文件和csharp :path=/static-assets/excel/content-code-examples/how-to/load-spreadsheet-load-csv.cs method for full Excel support or LoadCSV() 用於CSV格式,使.NET應用程式中的資料處理和提取無縫銜接。

CSV(逗號分隔值)文件格式用於值以逗號分隔的表格資料,常用於資料交換。 TSV(製表符分隔值)使用製表符分隔值,當資料中包含逗號時尤為優選。 了解文件格式轉換的更多資訊

Microsoft .NET中的DataSet類是ADO.NET(ActiveX Data Objects for .NET)技術的一部分。 它常被用於與資料庫相關的應用程式中,並允許您使用來自資料庫、XML等各種來源的資料。 IronXL提供無縫整合導入和導出DataSet物件

Excel文件格式中的資料如XLSX、XLS、XLSM、XLTX、CSV和TSV以及DataSet物件可以使用IronXL載入到Excel試算表中。 此強大的功能使IronXL成為開發者在業務應用、中資料分析專案和自動化報告系統中處理試算表資料的必備工具。

快速入門:載入現有的試算表

使用一個簡單的方法,您可以使用IronXL將現有的Excel、CSV或TSV文件載入到WorkBook中。 開發者可以快速開始編輯或提取資料,通過調用LoadCSV(...)專用於CSV格式。 有關全面的API文件,請存取IronXL API 參考

  1. 使用NuGet套件管理器安裝https://www.nuget.org/packages/IronXL.Excel

    PM > Install-Package IronXL.Excel
  2. 複製並運行這段程式碼片段。

    IronXL.WorkBook workbook = IronXL.WorkBook.Load("sample.xlsx");
  3. 部署以在您的實時環境中測試

    今天就開始在您的專案中使用IronXL,透過免費試用

    arrow pointer


如何在C#中載入Excel試算表文件?

使用靜態方法Load來載入現有的Excel工作簿。 此方法支援XLSX、XLS、XLSM、XLTX、CSV和TSV文件格式。 當工作簿受密碼保護時,將密碼作為該方法的第二個參數傳入。 該方法還接受作為位元組陣列或流的工作簿資料,分別可以使用專用的FromByteArrayFromStream方法。

IronXL的載入能力旨在處理真實應用中的各種場景。 無論您是在處理使用者上傳的文件、從網路流讀取,還是處理加密文件,該庫提供一致且可靠的介面。 Load方法根據文件擴展名和內容自動檢測文件格式,使其在不同用例中變得多用途。

哪些文件格式可以載入?

:path=/static-assets/excel/content-code-examples/how-to/load-spreadsheet-load-spreadsheet.cs
using IronXL;

// Supported for XLSX, XLS, XLSM, XLTX, CSV and TSV
WorkBook workBook = WorkBook.Load("sample.xlsx");
Imports IronXL

' Supported for XLSX, XLS, XLSM, XLTX, CSV and TSV
Private workBook As WorkBook = WorkBook.Load("sample.xlsx")
$vbLabelText   $csharpLabel

載入多種文件格式的靈活性意味著您可以處理舊版Excel文件(XLS)、現代Excel工作簿(XLSX)、啟用宏的工作簿(XLSM)和模板文件(XLTX)。 這種相容性確保從舊系統平滑遷移,同時支援現代Excel特性。 有關建立新試算表的更多詳細介紹,請查看我們的全方位指南。

如何處理受密碼保護的文件?

處理敏感資料通常需要密碼保護。 IronXL通過提供密碼作為參數,使載入受密碼保護的工作簿變得簡單:

:path=/static-assets/excel/content-code-examples/how-to/load-spreadsheet-3.cs
// Load password-protected Excel file
WorkBook protectedWorkBook = WorkBook.Load("protected.xlsx", "myPassword123");

// Work with the workbook normally
WorkSheet sheet = protectedWorkBook.DefaultWorkSheet;
sheet["B2"].Value = "Updated secure data";

// Save with password protection
protectedWorkBook.SaveAs("updated_protected.xlsx");
' Load password-protected Excel file
Dim protectedWorkBook As WorkBook = WorkBook.Load("protected.xlsx", "myPassword123")

' Work with the workbook normally
Dim sheet As WorkSheet = protectedWorkBook.DefaultWorkSheet
sheet("B2").Value = "Updated secure data"

' Save with password protection
protectedWorkBook.SaveAs("updated_protected.xlsx")
$vbLabelText   $csharpLabel

從位元組陣列或流中載入怎麼辦?

在現代應用中,文件通常來自各種來源,如網頁上傳、API響應或資料庫BLOB。 IronXL優雅地處理了這些場景:

:path=/static-assets/excel/content-code-examples/how-to/load-spreadsheet-4.cs
// Loading from byte array
byte[] excelBytes = File.ReadAllBytes("sample.xlsx");
WorkBook workBookFromBytes = WorkBook.FromByteArray(excelBytes);

// Loading from stream
using (FileStream stream = new FileStream("sample.xlsx", FileMode.Open))
{
    WorkBook workBookFromStream = WorkBook.FromStream(stream);
    
    // Process the workbook
    var sheet = workBookFromStream.DefaultWorkSheet;
    Console.WriteLine($"Sheet has {sheet.RowCount} rows");
}

// Loading from MemoryStream (common in web applications)
using (MemoryStream memStream = new MemoryStream(excelBytes))
{
    WorkBook workBookFromMemory = WorkBook.FromStream(memStream);
}
Imports System.IO

' Loading from byte array
Dim excelBytes As Byte() = File.ReadAllBytes("sample.xlsx")
Dim workBookFromBytes As WorkBook = WorkBook.FromByteArray(excelBytes)

' Loading from stream
Using stream As New FileStream("sample.xlsx", FileMode.Open)
    Dim workBookFromStream As WorkBook = WorkBook.FromStream(stream)

    ' Process the workbook
    Dim sheet = workBookFromStream.DefaultWorkSheet
    Console.WriteLine($"Sheet has {sheet.RowCount} rows")
End Using

' Loading from MemoryStream (common in web applications)
Using memStream As New MemoryStream(excelBytes)
    Dim workBookFromMemory As WorkBook = WorkBook.FromStream(memStream)
End Using
$vbLabelText   $csharpLabel

為什麼我應該使用專用方法處理CSV文件?

雖然LoadCSV方法來處理CSV文件格式以獲得優化的處理。 CSV文件具有特殊的特徵,例如分隔符檢測、編碼處理和資料型別推斷,受益於專業處理。 其在處理國際資料格式或當CSV文件使用非標準分隔符如分號或管道時特別有用。

LoadCSV何時比Load更好?

LoadCSV方法提供了對CSV解析的增強控制,使其成為當您需要指定自定義分隔符、處理不同的編碼或處理大型CSV文件時的理想選擇。 其在處理國際資料格式或當CSV文件使用非標準分隔符如分號或管道時特別有用。

LoadCSV如何處理特殊字元?

LoadCSV方法自動處理包括UTF-8、UTF-16和ASCII在內的各種編碼,確保特殊字元、重音字母和國際符號得到正確保留。 這在處理多語種資料或科學記數法時至關重要。 瞭解更多關於在.NET中寫入CSV文件以進行完整的CSV工作流管理。


如何將DataSet物件載入到Excel中?

Microsoft .NET中的DataSet類用於管理和使用斷開連接的、在記憶體中表示的資料。 這個LoadWorkSheetsFromDataSet方法載入到工作簿中。 在下面的程式碼範例中,建立了一個空的DataSet; 然而,更常見的是從資料庫查詢中實例化DataSet

為什麼我要將DataSet轉換為Excel?

DataSet物件轉換為Excel格式對於報告、資料匯出和建立使用者友好的資料展示至關重要。 商務使用者通常更喜歡Excel格式進行資料分析,而自動化報告經常需要將資料庫結果轉換為試算表格式。 此轉換使像條件格式設定圖表建立和公式應用這樣的功能得以實現,它們在原始DataSet物件中是不可用的。

DataSet關係在Excel中會發生什麼?

當載入具有多個相關表的DataSet建立單獨的工作表。 通過一致的鍵值保留表關係,允許使用者在處理導出的Excel文件時維持資料完整性。這使其成為在維持參照完整性的同時導出複雜資料庫結構的理想選擇。

我可以從DataSet中載入多個表嗎?

:path=/static-assets/excel/content-code-examples/how-to/load-spreadsheet-load-dataset.cs
using IronXL;
using System.Data;

// Create dataset
DataSet dataSet = new DataSet();

// Create workbook
WorkBook workBook = WorkBook.Create();

// Load DataSet
WorkBook.LoadWorkSheetsFromDataSet(dataSet, workBook);
Imports IronXL
Imports System.Data

' Create dataset
Private dataSet As New DataSet()

' Create workbook
Private workBook As WorkBook = WorkBook.Create()

' Load DataSet
WorkBook.LoadWorkSheetsFromDataSet(dataSet, workBook)
$vbLabelText   $csharpLabel

對於涉及資料庫整合的更高級場景,請參閱我們的指南通過System.Data.DataSet的Excel到SQL,演示Excel和資料庫之間的雙向資料流。

能夠將各種資料來源載入到Excel格式中使IronXL成為.NET開發人員的寶貴工具。 無論您是在構建報告系統、資料遷移工具還是商業智慧應用,其載入能力提供了強大的試算表操作的基礎。 有關更多範例和高級技術,請參閱我們全面的教程部分

常見問題

我可以將哪些文件格式載入到C#試算表中?

IronXL支援載入多種文件格式,包括XLSX、XLS、XLSM、XLTX、CSV和TSV文件,以及DataSet物件。這種全面的格式支援使IronXL適合於.NET應用程式中各種試算表資料操作需求。

我如何在C#中載入Excel文件?

您可以使用IronXL的WorkBook.Load()方法只需一行程式碼:IronXL.WorkBook workbook = IronXL.WorkBook.Load("sample.xlsx")。對於特定的CSV文件,您可以使用LoadCSV()方法。

我可以載入受密碼保護的Excel文件嗎?

可以,IronXL支援載入受密碼保護的workbook。只需在打開加密的Excel文件時將密碼作為第二個參數傳遞給Load方法。

CSV和TSV文件格式之間有什麼區別?

CSV(Comma-Separated Values)使用逗號分隔值,常用於資料交換。TSV(Tab-Separated Values)則使用制表符,當您的資料包含逗號時比較適用。IronXL支援無縫載入這兩種格式。

我可以從文件之外的其他來源載入Excel資料嗎?

可以,IronXL可以從多種來源載入workbook資料,包括使用FromByteArray方法的位元組陣列和使用FromStream方法的資料流。這種靈活性允許處理來自上傳、網路流或記憶體的文件。

我如何在試算表中使用DataSet物件?

IronXL提供LoadWorkSheetsFromDataSet方法,可以將ADO.NET DataSet物件中的資料導入Excel試算表中。這種整合可實現資料庫應用程式和Excel工作簿之間的無縫資料傳輸。

載入和導出試算表資料的主要步驟是什麼?

工作流程包括:1)下載IronXL程式庫,2)準備文件或DataSet,3)使用Load方法建立workbook物件,4)使用LoadWorkSheetsFromDataSet進行DataSet導入,5)按需導出workbook。

是否有包含載入方法的完整文件?

是的,IronXL提供完整的API文件,包括有關所有載入方法及其參數的詳細資訊,幫助開發人員有效實現試算表載入功能。

Curtis Chau
技術作家

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。

除了開發,Curtis對物聯網(IoT)有濃厚的興趣,探索創新的方法來整合硬體和軟體。在空閒時間,他喜歡玩遊戲和建立Discord機器人,結合他對技術的熱愛與創造力。

準備好開始了嗎?
Nuget 下載 2,134,203 | 版本: 2026.7 剛剛發布
Still Scrolling Icon

仍在滾動嗎?

想要快速證明嗎? PM > Install-Package IronXL.Excel
運行一個範例 觀看您的資料成為試算表。