如何在 C# 中載入現有的電子表格

如何在 C# 中載入現有電子表格

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

使用 IronXL 的 WorkBook.Load() 方法將現有的 Excel、CSV、TSV 檔案和 DataSet 物件載入到 C# 電子表格中,以獲得完整的 Excel 支持,或使用 LoadCSV() 方法以支援 CSV 格式,從而支援在 CSV 格式,從而使用 LoadCSV() 方法以支援 CSV 格式,從而在.NET操作中實現的無縫操作和程式提取。

CSV(逗號分隔值)檔案格式適用於以逗號分隔值的表格數據,常用於資料交換。 TSV(製表符分隔值)使用製表符分隔值,當資料包含逗號時,建議使用 TSV。 了解更多關於文件格式轉換的資訊

Microsoft .NET中的 DataSet 類別是 ADO .NET (ActiveX 資料物件.NET)技術的一部分。 它常用於資料庫相關的應用程式中,可讓您處理來自各種來源(如資料庫、XML 等)的資料。 IronXL提供無縫集成,用於匯入和匯出資料集物件

使用IronXL可以將 Excel 檔案格式(如 XLSX、XLS、XLSM、XLTX、CSV 和 TSV)以及 DataSet 物件中包含的資料載入到 Excel 電子表格中。 IronXL 的強大功能使其成為開發人員在業務應用程式、資料分析專案和自動化報告系統中處理電子表格資料時必不可少的工具。

快速入門:載入現有電子表格

使用IronXL,您可以透過一個簡單的方法將現有的 Excel、CSV 或 TSV 檔案載入到 WorkBook 中。 開發人員可以透過呼叫 WorkBook.Load(...) 來快速開始編輯或提取資料以獲得完整的 Excel 支持,或透過呼叫 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電子表格檔案?

使用靜態方法載入現有的 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");
$vbLabelText   $csharpLabel

能夠靈活載入多種檔案格式意味著您可以處理舊版 Excel 檔案 (XLS)、現代 Excel 工作簿 (XLSX)、啟用巨集的工作簿 (XLSM) 和範本檔案 (XLTX)。 這種相容性確保了從舊系統平滑遷移,同時支援現代 Excel 功能。 有關建立新電子表格的更多詳細信息,請查看我們的完整指南。

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

處理敏感資料通常需要密碼保護。 IronXL可以透過提供密碼參數,輕鬆載入受密碼保護的工作簿

// 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
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");
$vbLabelText   $csharpLabel

如何從位元組數組或流中載入資料?

在現代應用程式中,檔案通常來自各種來源,例如網路上傳、API 回應或資料庫 BLOB。 IronXL能夠優雅地處理這些情況:

// 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);
}
// 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);
}
$vbLabelText   $csharpLabel

為什麼我應該使用專門的方法來處理 CSV 檔案?

雖然 Load 方法可以讀取所有可用的檔案格式,但對於 CSV 檔案格式,請使用 LoadCSV 方法以獲得最佳處理效果。 CSV 檔案具有獨特的特性,需要進行專門的處理,例如分隔符號偵測、編碼處理和資料類型推斷。 當處理國際資料格式或 CSV 檔案使用非標準分隔符號(如分號或垂直線)時,此功能尤其有用。

何時 LoadCSV 比 Load 更適合?

LoadCSV 方法可增強對 CSV 解析的控制,因此當您需要指定自訂分隔符號、處理不同的編碼或處理大型 CSV 檔案時,它是理想之選。 當處理國際資料格式或 CSV 檔案使用非標準分隔符號(如分號或垂直線)時,此功能尤其有用。

LoadCSV 如何處理特殊字元?

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

// Load CSV file
WorkBook workBook = WorkBook.LoadCSV("sample.csv");
$vbLabelText   $csharpLabel

LoadCSV 方法可自動處理各種編碼,包括 UTF-8、UTF-16 和 ASCII,確保特殊字元、重音字母和國際符號正確保留。 在處理多語言資料或科學計數法時,這一點至關重要。 了解更多關於如何在.NET中編寫 CSV 檔案以實現完整的 CSV 工作流程管理的資訊。


如何將資料集物件載入到Excel中?

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

為什麼要將資料集轉換為Excel格式?

DataSet 物件轉換為 Excel 格式對於報表產生、資料匯出和建立使用者友好的資料演示至關重要。 商業用戶通常喜歡使用 Excel 格式進行資料分析,而自動產生的報表也經常需要將資料庫結果轉換為電子表格格式。 這種轉換可以實現原始 DataSet 物件所不具備的功能,例如條件格式設定圖表建立和公式應用。

Excel中的資料集關係會發生什麼變化?

當載入包含多個相關表格的 DataSet 時, IronXL會為 DataTable 中的每個 DataSet 建立單獨的工作表。 透過一致的鍵值來保留表關係,使用戶在使用匯出的 Excel 檔案時能夠保持資料完整性。這使其成為匯出複雜資料庫架構並保持引用完整性的理想選擇。

我可以從資料集中載入多個表嗎?

: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);
$vbLabelText   $csharpLabel

對於涉及資料庫整合的更高級場景,請參閱我們關於透過 System.Data.DataSet 將 Excel 轉換為 SQL 的指南,該指南演示了 Excel 和資料庫之間的雙向資料流。

IronXL能夠將各種資料來源載入到 Excel 格式中,這使得它成為.NET開發人員的寶貴工具。 無論您是建立報表系統、資料遷移工具還是商業智慧應用程序,載入功能都為強大的電子表格操作奠定了基礎。 更多範例和高級技巧,請訪問我們的綜合教程部分

常見問題解答

哪些檔案格式可以載入 C# 試算表?

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

如何在 C# 中載入 Excel 檔案?

使用 IronXL.Excel 的 WorkBook.Load() 方法只需一行代碼即可載入 Excel 檔案:IronXl.WorkBook workbook = IronXl.WorkBook.Load("sample.xlsx").對於 CSV 檔案,您可以使用 LoadCSV() 方法。

我可以載入受密碼保護的 Excel 檔案嗎?

是的,IronXL 支援載入密碼保護的工作簿。只需在開啟加密的 Excel 檔案時,將密碼作為第二參數傳入 Load 方法即可。

CSV 和 TSV 檔案格式有何差異?

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

我可以從檔案以外的來源載入 Excel 資料嗎?

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

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

IronXL 提供 LoadWorkSheetsFromDataSet 方法,將資料從 ADO.NET DataSet 物件匯入 Excel 試算表。此整合可讓資料庫應用程式與 Excel 工作簿之間進行無縫資料傳輸。

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

工作流程包括:1)下載 IronXL 函式庫;2)準備您的檔案或 DataSet;3)使用 Load 方法建立工作簿物件;4)使用 LoadWorkSheetsFromDataSet 進行 DataSet 匯入;以及 5)根據需要匯出工作簿。

載入方法是否有完整的說明文件?

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

Curtis Chau
技術作家

Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。

除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。

準備好開始了嗎?
Nuget 下載 1,909,201 | 版本: 2026.3 剛剛發布
Still Scrolling Icon

還在捲動嗎?

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