跳過到頁腳內容
使用IRONPDF

如何使用ASP .NET創建PDF

Microsoft Excel 是一款電子表格軟體,用於儲存和組織資料,並以各種格式呈現資料。 由於其有用的公式,Excel 被廣泛用於財務資料。 IronXL 軟體庫可用於在 C# 中匯入和讀取 Excel 檔案。

IronXL - Excel 庫

IronXL - .NET Excel 庫 是一個 .NET Excel 庫,優先考慮使用者的易用性、準確性和速度。 它能夠幫助您有效率地匯入和讀取 Excel 文件,以及創建和編輯 Excel 檔案,具有極快的性能。 它不需要 MS Office Interop。這意味著即使未安裝 Excel,它也提供所有讀取 Excel 檔案的功能。 這使得 IronXL 對於用 C# 匯入和讀取 Excel 檔案的開發者來說是一個強大的工具。

IronXL 適用於所有平台,如 Windows、Linux、macOS、Docker、Azure 和 AWS。 它與所有 .NET 框架兼容。 IronXL 是一個多功能的庫,可以集成到控制台、桌面和 Web ASP.NET 應用程式中。 它支持不同的工作簿格式,如 XLS 和 XLSX 檔案、XSLT 和 XLSM、CSV 和 TSV。

一些重要功能

  • 打開、讀取 Excel 檔案,並從不同的電子表格格式中搜尋資料,如 XLS/CSV/TSV/XLSX 檔案。
  • 將 Excel 工作表匯出到 XLS/XLSX/CSV/TSV/JSON。
  • 加密和解密具有密碼的 XLSM/XLTX/XLSX 檔案。
  • 將 Excel 工作表匯入為 System.Data.DataSetSystem.Data.DataTable 物件。
  • 每次編輯工作表時,Excel 檔案公式會重新計算。
  • 使用簡單語法設定單元格範圍,如 WorkSheet["A1:B10"]
  • 排序單元格範圍、列和行。
  • 樣式單元格 - 字體、字體大小、背景顏色、邊框、對齊方式和編號格式。

如何在 C# 中匯入 Excel 工作簿

先決條件

要在 C# 中使用 IronXL 讀取 Excel 檔案,第一步是確保本機電腦上安裝了以下組件:

  1. Visual Studio - 它是開發 C# .NET 應用程式的官方 IDE。 您可以從 Visual Studio 下載頁面 下載和安裝 Visual Studio。
  2. IronXL - 它是一個幫助在 C# 中處理 Excel 表的庫。 在使用之前,必須在 C# 程式中安裝它。 IronXL 可以從 IronXL NuGet 套件 或在 Visual Studio 工具中管理 NuGet 套件下載。 您也可以從 Iron Software 的網站下載 .NET Excel DLL

添加必要的命名空間

Visual Studio 和 IronXL 安裝後,需要在源代碼中包括使用 IronXL 的 IronXL 程式集引用。 在新專案的檔案頂部添加以下代碼行,IronXL 功能將在此使用:

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

在 C# 中打開現有的 Excel 檔案

Microsoft Excel 電子表格也稱為 Excel 工作簿。 每個工作簿包含多個工作表,並且單個工作表中包含有其值的表格單元格。 若要使用 IronXL 打開和讀取 Excel 檔案,應使用 IronXL 庫中的 WorkBook 類和 Load 方法載入。 代碼如下:

// Supported Excel spreadsheet formats for reading include: XLSX, XLS, CSV, and TSV
WorkBook workbook = WorkBook.Load("test.xlsx");
// Supported Excel spreadsheet formats for reading include: XLSX, XLS, CSV, and TSV
WorkBook workbook = WorkBook.Load("test.xlsx");
' Supported Excel spreadsheet formats for reading include: XLSX, XLS, CSV, and TSV
Dim workbook As WorkBook = WorkBook.Load("test.xlsx")
$vbLabelText   $csharpLabel

這將 Excel 檔案打開在工作簿實例引用變量中。 由於它可能有多個工作表,因此可以用來打開特定的工作表或全部同時打開。 以下代碼在 sheet 實例變量中打開第一個 WorkSheet

WorkSheet sheet = workbook.WorkSheets.First();
WorkSheet sheet = workbook.WorkSheets.First();
Dim sheet As WorkSheet = workbook.WorkSheets.First()
$vbLabelText   $csharpLabel

這將打開 Excel 檔案中的第一個工作表,現在可以從該工作表讀取和寫入 Excel 資料。

已打開 Excel 檔案

如何在 ASP .NET 中創建 PDF,圖 1:Excel 檔案 Excel 檔案

從匯入的 Excel 檔案中讀取資料

Excel 檔案匯入後,它已準備好讀取資料。 在 C# 中使用 IronXL 讀取 Excel 檔案資料非常簡單且容易。 只需簡單地提到單元格引用號,您就可以讀取 Excel 單元格值。

下面的代碼獲取引用號為 "C2" 的單元格的值:

// Select cells easily in Excel-notation and return the value
int cellValue = sheet["C2"].IntValue;

// Display the value
Console.WriteLine(cellValue);
// Select cells easily in Excel-notation and return the value
int cellValue = sheet["C2"].IntValue;

// Display the value
Console.WriteLine(cellValue);
' Select cells easily in Excel-notation and return the value
Dim cellValue As Integer = sheet("C2").IntValue

' Display the value
Console.WriteLine(cellValue)
$vbLabelText   $csharpLabel

輸出如下所示:

如何在 ASP .NET 中創建 PDF,圖 2:讀取 Excel 讀取 Excel

Now, let's read data from a range of cells in the opened Excel file. 代碼如下:

// Read from a range of cells elegantly.
foreach (var cell in sheet["A2:A6"])
{
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
// Read from a range of cells elegantly.
foreach (var cell in sheet["A2:A6"])
{
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
' Read from a range of cells elegantly.
For Each cell In sheet("A2:A6")
	Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text)
Next cell
$vbLabelText   $csharpLabel

該代碼非常簡單、乾淨且清晰。 可以使用如 foreach 迴圈中所示的簡單語法來引用一系列單元格:sheet["A2:A6"],使用 foreach 迴圈迭代每個單元格以獲取其值。 在這裡,您將在控制台輸出中看到從第 2 行到第 6 行的 A 列中的名稱:

如何在 ASP .NET 中創建 PDF,圖 3:讀取單元格範圍 讀取單元格範圍

有關讀取和寫入單元格值的更多詳細信息,請查看此教學

從 Excel 檔案中匯入所有資料

IronXL 可以使用行和列索引一次性讀取 Excel 表。 以下 IronXL 代碼示例幫助在控制台輸出中以相同格式獲取整個 Excel 檔案資料:

WorkBook workbook = WorkBook.Load("test.xlsx");
WorkSheet sheet = workbook.WorkSheets.First();

// Traverse all rows of Excel WorkSheet
for (int i = 0; i < sheet.Rows.Count(); i++)
{
    // Traverse all columns of specific Row
    for (int j = 0; j < sheet.Columns.Count(); j++)
    {
        // Get the value as a string
        string val = sheet.Rows[i].Columns[j].Value.ToString();
        Console.Write("{0}\t", val);
    }
    Console.WriteLine();
}
WorkBook workbook = WorkBook.Load("test.xlsx");
WorkSheet sheet = workbook.WorkSheets.First();

// Traverse all rows of Excel WorkSheet
for (int i = 0; i < sheet.Rows.Count(); i++)
{
    // Traverse all columns of specific Row
    for (int j = 0; j < sheet.Columns.Count(); j++)
    {
        // Get the value as a string
        string val = sheet.Rows[i].Columns[j].Value.ToString();
        Console.Write("{0}\t", val);
    }
    Console.WriteLine();
}
Imports Microsoft.VisualBasic

Dim workbook As WorkBook = WorkBook.Load("test.xlsx")
Dim sheet As WorkSheet = workbook.WorkSheets.First()

' Traverse all rows of Excel WorkSheet
For i As Integer = 0 To sheet.Rows.Count() - 1
	' Traverse all columns of specific Row
	For j As Integer = 0 To sheet.Columns.Count() - 1
		' Get the value as a string
		Dim val As String = sheet.Rows(i).Columns(j).Value.ToString()
		Console.Write("{0}" & vbTab, val)
	Next j
	Console.WriteLine()
Next i
$vbLabelText   $csharpLabel

輸出文件

如何在 ASP .NET 中創建 PDF,圖 4:讀取 Excel 檔案的控制台輸出 讀取 Excel 檔案的控制台輸出

總結

在本文中,我們學習了如何在沒有任何安裝 Microsoft Excel 的情況下在 C# 中匯入和讀取 Excel 檔案。 然後,我們考慮了多種從 Excel 電子表格中讀取資料的方法。 IronXL 還幫助在 C# 中創建 Excel 檔案,即使未安裝 Excel。

IronXL 提供了一體化的解決方案,可以以程式化方式實現所有 MS Excel 文件相關的任務。 您可以執行公式計算、字元或數字排序、修剪和追加、查找和替換、合併和取消合併、保存檔案等。您可以編輯單元格值,還可以設置單元格數據格式以及驗證電子表格數據。 它還支持 CSV 檔案,幫助您處理類似 Excel 的數據。

免費試用 IronXL,探索其功能。 它可以用於商業用途授權,其 Lite 套件的起價僅為 $799。

常見問題解答

如何在不遺失格式的情況下從 ASP.NET 應用程式建立 PDF?

您可以使用 IronPDF 從 ASP.NET 應用程式建立 PDF,同時保留原始格式。 IronPDF 可確保 HTML 內容的佈局和樣式在產生的 PDF 中準確呈現。

在 C# Web 應用程式中,將 HTML 轉換為 PDF 的最佳方法是什麼?

IronPDF 是在 C# Web 應用程式中將 HTML 轉換為 PDF 的絕佳選擇。它提供了諸如RenderHtmlAsPdf之類的方法,可以將 HTML 字串和網頁轉換為高品質的 PDF 文件。

是否可以在不使用第三方插件的情況下,在 ASP.NET 中產生 PDF 檔案?

是的,使用 IronPDF,您可以在 ASP.NET 應用程式中產生 PDF,而無需依賴第三方外掛程式或外部軟體。 IronPDF 直接與您的應用程式集成,以處理 PDF 創建。

如何在C#中將HTML轉換為PDF時確保佈局準確?

IronPDF 在 C# 中將 HTML 轉換為 PDF 時,能夠精確控制 PDF 的佈局和格式。它會保留 CSS 樣式、分頁符號和媒體查詢,以確保輸出與原始設計保持一致。

IronPDF 能否用於加密和保護 PDF 文件?

是的,IronPDF 提供加密和保護 PDF 文件的功能。您可以套用密碼保護並設定權限,以控制對 PDF 文件的存取和編輯能力。

IronPDF 支援哪些平台產生 PDF 檔案?

IronPDF 支援在多個平台上產生 PDF,包括 Windows、Linux、macOS、Docker、Azure 和 AWS,使其能夠靈活應用於各種部署環境。

在 ASP.NET 中,當從 HTML 建立 PDF 時,如何處理圖像?

使用 IronPDF 時,HTML 內容中的影像會在轉換過程中自動嵌入 PDF 中。它支援多種圖像格式,確保圖像在最終文件中正確顯示。

是否可以在 ASP.NET 應用程式中自動建立 PDF 檔案?

當然,IronPDF 可以實現 ASP.NET 應用程式中 PDF 產生的自動化。您可以根據應用程式中的事件或特定條件來排程或觸發 PDF 產生。

IronPDF 是否完全支援 .NET 10 的 ASP.NET 和其他 .NET 專案類型?

是的。 IronPDF 完全相容於 .NET 10。它支援所有現代 .NET 版本,包括 .NET 10,並適用於 Web、桌面、控制台、Blazor 和 MAUI 專案。您可以像在之前的 .NET 版本中一樣使用相同的 API,例如ChromePdfRendererRenderHtmlAsPdf和非同步方法。

Curtis Chau
技術作家

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

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