使用IRONXL

在 C# 中生成 Excel 檔案

已更新 2023年12月20日
分享:

我們開發的應用程式不斷與 Excel 試算表進行溝通,以獲取數據進行評估和結果。能夠在 C# 中程式化地生成 Excel 文件對我們的開發非常有幫助,節省了時間和精力。在本教程中,我們將學習生成不同格式的 Excel 文件,設置單元格樣式並使用高效函數 C# 程式插入數據。


第一步

1. 使用 IronXL 生成 Excel 文件

使用 IronXL Excel for C#庫生成 Excel 文件,該庫為在專案中生成和操作數據提供了一系列功能。此庫在開發過程中是免費的,當您準備好上線時,可以購買許可證。要遵循本教程,您可以 下載 IronXL 以生成 或通过 Visual Studio 访问它并 NuGet 畫廊.


Install-Package IronXL.Excel

如何操作教程

2. C# Excel 文件生成概述

在業務應用開發中,我們經常需要以程式的方式生成不同類型的 Excel 文件。為此,我們需要最簡單且最快速的方法來生成不同類型的文件並自動將其保存到所需的位置。

安裝 IronXL 後,我們可以使用其功能來 生成不同類型的 Excel 文件* 複檔名為 .xlsx 的 Excel 檔案。

  • 複檔名為 .xls 的 Excel 檔案。
  • 逗號分隔值 (.csv) 檔案。
  • 逗號分隔值 (.tsv) 檔案。
  • JavaScript Object Notation (.json) 文件。
  • 可扩展标记语言 (.xml) 檔案。

要生成任何類型的檔案,首先我們需要創建一個 Excel Workbook.

//generate New WorkBook
WorkBook wb = WorkBook.Create();
//generate New WorkBook
WorkBook wb = WorkBook.Create();
'generate New WorkBook
Dim wb As WorkBook = WorkBook.Create()
VB   C#

上述代码行将创建一个新的 WorkBook wb,现在我们将创建一个 工作表 物件。

//Generate New WorkSheet
WorkSheet ws = WorkBook.CreateWorkSheet("SheetName");
//Generate New WorkSheet
WorkSheet ws = WorkBook.CreateWorkSheet("SheetName");
'Generate New WorkSheet
Dim ws As WorkSheet = WorkBook.CreateWorkSheet("SheetName")
VB   C#

這將創建一個 WorkSheet ws,我們可以用它在 Excel 文件中插入數據。


3. 生成 XLSX 文件C#

首先,我們按照上面的步驟來生成 WorkBookWorkSheet

然後,我們在其中插入數據以創建 .xlsx 擴展名文件。為此,IronXL 提供了一個單元格地址系統,允許我們以編程方式在特定的單元格地址插入數據。

//Insert data by cell addressing
WorkSheet ["CellAddress"].Value = "MyValue";
//Insert data by cell addressing
WorkSheet ["CellAddress"].Value = "MyValue";
'Insert data by cell addressing
WorkSheet ("CellAddress").Value = "MyValue"
VB   C#

它將在指定的單元格地址中插入名為“MyValue”的新值。用同樣的方式,我們可以將數據插入到所需的多個單元格中。之後,我們將按如下方式將 Excel 文件保存到指定路徑:

//specify file path and name
WorkBook.SaveAs("Path + FileName.xlsx");
//specify file path and name
WorkBook.SaveAs("Path + FileName.xlsx");
'specify file path and name
WorkBook.SaveAs("Path + FileName.xlsx")
VB   C#

這將在指定路徑中創建一個帶有副檔名 .xlsx 的新 Excel 文件。儲存時,不要忘記在檔名中寫上副檔名 .xlsx

進一步了解如何 在 C# 專案中創建 Excel 工作簿請查看這裡的程式碼範例。

/**
Generate XLSX File
anchor-generate-xlsx-file-c-num
**/
using IronXL;
static void Main(string [] args)
{
    //create new WorkBook of .xlsx Extension
    WorkBook wb = WorkBook.Create(ExcelFileFormat.XLSX);
    //create workSheet
    WorkSheet ws = wb.CreateWorkSheet("Sheet1");
    //insert data in the cells of WorkSheet
    ws ["A1"].Value = "Hello";
    ws ["A2"].Value = "World";
    ws ["C4"].Value = "IronXL";
    //save the file as .xlsx
    wb.SaveAs("sample.xlsx");
    Console.WriteLine("successfully created.");
    Console.ReadKey();
}
/**
Generate XLSX File
anchor-generate-xlsx-file-c-num
**/
using IronXL;
static void Main(string [] args)
{
    //create new WorkBook of .xlsx Extension
    WorkBook wb = WorkBook.Create(ExcelFileFormat.XLSX);
    //create workSheet
    WorkSheet ws = wb.CreateWorkSheet("Sheet1");
    //insert data in the cells of WorkSheet
    ws ["A1"].Value = "Hello";
    ws ["A2"].Value = "World";
    ws ["C4"].Value = "IronXL";
    //save the file as .xlsx
    wb.SaveAs("sample.xlsx");
    Console.WriteLine("successfully created.");
    Console.ReadKey();
}
'''
'''Generate XLSX File
'''anchor-generate-xlsx-file-c-num
'''*
Imports IronXL
Shared Sub Main(ByVal args() As String)
	'create new WorkBook of .xlsx Extension
	Dim wb As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
	'create workSheet
	Dim ws As WorkSheet = wb.CreateWorkSheet("Sheet1")
	'insert data in the cells of WorkSheet
	ws ("A1").Value = "Hello"
	ws ("A2").Value = "World"
	ws ("C4").Value = "IronXL"
	'save the file as .xlsx
	wb.SaveAs("sample.xlsx")
	Console.WriteLine("successfully created.")
	Console.ReadKey()
End Sub
VB   C#

您可以在這裡看到新創建的 Excel 文件 sample.xlsx 的截圖:

在 C# 中生成 Excel 檔案,圖 1:修改後的值在 C4 格中的結果

修改後C4儲存格中的值的結果


4. 生成 XLS 文件C#

也可以使用IronXL生成 .xls 文件。為此目的,我們將使用 `WorkBook.Create() 函數如下:

WorkBook.Create(ExcelFileFormat.XLS)
WorkBook.Create(ExcelFileFormat.XLS)
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'WorkBook.Create(ExcelFileFormat.XLS)
VB   C#

這將創建一個新的具有 .xls 擴展名的 Excel 文件。請記住,為 Excel 文件命名時,必須將 .xls 擴展名與文件名一起寫入,如下所示:

WorkBook.SaveAs("Path + FileName.xls");
WorkBook.SaveAs("Path + FileName.xls");
WorkBook.SaveAs("Path + FileName.xls")
VB   C#

現在,讓我們來看看如何生成具有 .xls 擴展名的 Excel 檔案的示例:

/**
Generate XLS File
anchor-generate-xls-file-c-num
**/
using IronXL;
static void Main(string [] args)
{
    //create new WorkBook of .xls Extension 
    WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
    //create WorkSheet
    WorkSheet ws = wb.CreateWorkSheet("Sheet1");
    //insert data in the cells of WorkSheet
    ws ["A1"].Value = "Hello";
    ws ["A2"].Value = "World";
    //save the file as .xls
    wb.SaveAs("sample.xls");
    Console.WriteLine("successfully created.");
    Console.ReadKey();
}
/**
Generate XLS File
anchor-generate-xls-file-c-num
**/
using IronXL;
static void Main(string [] args)
{
    //create new WorkBook of .xls Extension 
    WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
    //create WorkSheet
    WorkSheet ws = wb.CreateWorkSheet("Sheet1");
    //insert data in the cells of WorkSheet
    ws ["A1"].Value = "Hello";
    ws ["A2"].Value = "World";
    //save the file as .xls
    wb.SaveAs("sample.xls");
    Console.WriteLine("successfully created.");
    Console.ReadKey();
}
'''
'''Generate XLS File
'''anchor-generate-xls-file-c-num
'''*
Imports IronXL
Shared Sub Main(ByVal args() As String)
	'create new WorkBook of .xls Extension 
	Dim wb As WorkBook = WorkBook.Create(ExcelFileFormat.XLS)
	'create WorkSheet
	Dim ws As WorkSheet = wb.CreateWorkSheet("Sheet1")
	'insert data in the cells of WorkSheet
	ws ("A1").Value = "Hello"
	ws ("A2").Value = "World"
	'save the file as .xls
	wb.SaveAs("sample.xls")
	Console.WriteLine("successfully created.")
	Console.ReadKey()
End Sub
VB   C#

5. 生成 CSV 檔案 C#

逗號分隔值 (.csv) 檔案在各類型的組織中也扮演了非常重要的角色。所以,我們也需要學習如何生成 .csv 檔案並以程式方式插入數據。

我們可以使用上述相同的過程,但在保存時需要指定 .csv 擴展名。讓我們看看在我們的 C# 專案中如何創建 .csv 檔案的示例:

/**
Generate CSV File
anchor-generate-csv-file-c-num
**/
using IronXL;
static void Main(string [] args)
{
    //create new WorkBook  
    WorkBook wb = WorkBook.Create();
    //create WorkSheet
    WorkSheet ws = wb.CreateWorkSheet("Sheet1");
    //insert data in the cells of WorkSheet
    ws ["A1"].Value = "Hello";
    ws ["A2"].Value = "World";
    //save the file as .csv
    wb.SaveAsCsv("sample.csv");
    Console.WriteLine("successfully created.");
    Console.ReadKey();
}
/**
Generate CSV File
anchor-generate-csv-file-c-num
**/
using IronXL;
static void Main(string [] args)
{
    //create new WorkBook  
    WorkBook wb = WorkBook.Create();
    //create WorkSheet
    WorkSheet ws = wb.CreateWorkSheet("Sheet1");
    //insert data in the cells of WorkSheet
    ws ["A1"].Value = "Hello";
    ws ["A2"].Value = "World";
    //save the file as .csv
    wb.SaveAsCsv("sample.csv");
    Console.WriteLine("successfully created.");
    Console.ReadKey();
}
'''
'''Generate CSV File
'''anchor-generate-csv-file-c-num
'''*
Imports IronXL
Shared Sub Main(ByVal args() As String)
	'create new WorkBook  
	Dim wb As WorkBook = WorkBook.Create()
	'create WorkSheet
	Dim ws As WorkSheet = wb.CreateWorkSheet("Sheet1")
	'insert data in the cells of WorkSheet
	ws ("A1").Value = "Hello"
	ws ("A2").Value = "World"
	'save the file as .csv
	wb.SaveAsCsv("sample.csv")
	Console.WriteLine("successfully created.")
	Console.ReadKey()
End Sub
VB   C#

要能夠更多地與 CSV 文件互動,您可以按照本教程操作 讀取 .csv 檔案.


6. 生成 TSV 檔案 C#

有時候我們需要生成分隔符值資料 (.tsv) 檔案並以程式方式插入數據。

使用IronXL,我們還可以生成.tsv擴展名的檔案,在其中插入數據,然後將其保存到所需的位置。

讓我們來看看如何生成 .tsv 擴展名檔案的例子:

/**
Generate TSV File
anchor-generate-tsv-file-c-num
**/
using IronXL;
static void Main(string [] args)
{ 
    //create new WorkBook  
    WorkBook wb = WorkBook.Create();
    //create WorkSheet
    WorkSheet ws = wb.CreateWorkSheet("Sheet1");
    //insert data in the cells of WorkSheet
    ws ["A1"].Value = "Hello";
    ws ["A2"].Value = "World";
    //save the file as .tsv
    wb.SaveAs("sample.tsv");
    Console.WriteLine("successfully created.");
    Console.ReadKey();
}
/**
Generate TSV File
anchor-generate-tsv-file-c-num
**/
using IronXL;
static void Main(string [] args)
{ 
    //create new WorkBook  
    WorkBook wb = WorkBook.Create();
    //create WorkSheet
    WorkSheet ws = wb.CreateWorkSheet("Sheet1");
    //insert data in the cells of WorkSheet
    ws ["A1"].Value = "Hello";
    ws ["A2"].Value = "World";
    //save the file as .tsv
    wb.SaveAs("sample.tsv");
    Console.WriteLine("successfully created.");
    Console.ReadKey();
}
'''
'''Generate TSV File
'''anchor-generate-tsv-file-c-num
'''*
Imports IronXL
Shared Sub Main(ByVal args() As String)
	'create new WorkBook  
	Dim wb As WorkBook = WorkBook.Create()
	'create WorkSheet
	Dim ws As WorkSheet = wb.CreateWorkSheet("Sheet1")
	'insert data in the cells of WorkSheet
	ws ("A1").Value = "Hello"
	ws ("A2").Value = "World"
	'save the file as .tsv
	wb.SaveAs("sample.tsv")
	Console.WriteLine("successfully created.")
	Console.ReadKey()
End Sub
VB   C#

7. 生成 JSON 文件 C#

我們可以舒適地說 JavaScript Object Notation (.json) 檔案是最常見的數據文件,幾乎所有的软件开发公司都会使用。因此,我们常常需要將數據保存為 JSON 格式。為此,我们需要最簡單的方法生成 JSON 格式文件並將數據插入其中。

在這種情況下,IronXL 是最佳選擇,通過它我們可以輕鬆地為 C# 生成這些文件。讓我們看看示例。

/**
Generate JSON File
anchor-generate-json-file-c-num
**/
using IronXL;
static void Main(string [] args)
{
    //create new WorkBook 
    WorkBook wb = WorkBook.Create();
    //create WorkSheet
    WorkSheet ws = wb.CreateWorkSheet("Sheet1");
    //insert data in the cells of WorkSheet
    ws ["A1"].Value = "1";
    ws ["A2"].Value = "john";
    ws ["B1"].Value = "2";
    ws ["B2"].Value = "alex";
    ws ["C1"].Value = "3";
    ws ["C2"].Value = "stokes";
    //save the file as .json
    wb.SaveAsJson("sample.json");
    Console.WriteLine("successfully created.");
    Console.ReadKey();
}
/**
Generate JSON File
anchor-generate-json-file-c-num
**/
using IronXL;
static void Main(string [] args)
{
    //create new WorkBook 
    WorkBook wb = WorkBook.Create();
    //create WorkSheet
    WorkSheet ws = wb.CreateWorkSheet("Sheet1");
    //insert data in the cells of WorkSheet
    ws ["A1"].Value = "1";
    ws ["A2"].Value = "john";
    ws ["B1"].Value = "2";
    ws ["B2"].Value = "alex";
    ws ["C1"].Value = "3";
    ws ["C2"].Value = "stokes";
    //save the file as .json
    wb.SaveAsJson("sample.json");
    Console.WriteLine("successfully created.");
    Console.ReadKey();
}
'''
'''Generate JSON File
'''anchor-generate-json-file-c-num
'''*
Imports IronXL
Shared Sub Main(ByVal args() As String)
	'create new WorkBook 
	Dim wb As WorkBook = WorkBook.Create()
	'create WorkSheet
	Dim ws As WorkSheet = wb.CreateWorkSheet("Sheet1")
	'insert data in the cells of WorkSheet
	ws ("A1").Value = "1"
	ws ("A2").Value = "john"
	ws ("B1").Value = "2"
	ws ("B2").Value = "alex"
	ws ("C1").Value = "3"
	ws ("C2").Value = "stokes"
	'save the file as .json
	wb.SaveAsJson("sample.json")
	Console.WriteLine("successfully created.")
	Console.ReadKey()
End Sub
VB   C#

請檢視新建立的 JSON 檔案 sample.json 的截圖:

在 C# 中生成 Excel 文件,圖 2:在 Visual Studio 中導航到 NuGet 套件管理器

在 Visual Studio 中導航到 NuGet 套件管理器


8. 生成 XML 文件 C#

在業務應用程式開發中,我們經常需要將數據保存在可擴展標記語言 (XML) 中。 (.xml) 文件格式。這很重要,因為.xml文件數據對人類和機器都可讀。

通過以下示例,我們將學習如何為C#生成.xml文件並以程式設計的方式插入數據。

/**
Generate XML File
anchor-generate-xml-file-c-num
**/
using IronXL;
static void Main(string [] args)
{
    //create new WorkBook 
    WorkBook wb = WorkBook.Create();
    //create WorkSheet
    WorkSheet ws = wb.CreateWorkSheet("Sheet1");
    //insert data in the cells of WorkSheet
    ws ["A1"].Value = "Hello";
    ws ["A2"].Value = "World";
    //save the file as .json
    wb.SaveAsXml("sample.xml");
    Console.WriteLine("successfully created.");
    Console.ReadKey();
}
/**
Generate XML File
anchor-generate-xml-file-c-num
**/
using IronXL;
static void Main(string [] args)
{
    //create new WorkBook 
    WorkBook wb = WorkBook.Create();
    //create WorkSheet
    WorkSheet ws = wb.CreateWorkSheet("Sheet1");
    //insert data in the cells of WorkSheet
    ws ["A1"].Value = "Hello";
    ws ["A2"].Value = "World";
    //save the file as .json
    wb.SaveAsXml("sample.xml");
    Console.WriteLine("successfully created.");
    Console.ReadKey();
}
'''
'''Generate XML File
'''anchor-generate-xml-file-c-num
'''*
Imports IronXL
Shared Sub Main(ByVal args() As String)
	'create new WorkBook 
	Dim wb As WorkBook = WorkBook.Create()
	'create WorkSheet
	Dim ws As WorkSheet = wb.CreateWorkSheet("Sheet1")
	'insert data in the cells of WorkSheet
	ws ("A1").Value = "Hello"
	ws ("A2").Value = "World"
	'save the file as .json
	wb.SaveAsXml("sample.xml")
	Console.WriteLine("successfully created.")
	Console.ReadKey()
End Sub
VB   C#

您可以閱讀更多有關 轉換 Excel 試算表 以程式方式供 C# 專案使用的和檔案。

IronXL 程式庫還提供了與 Excel 檔案互動的多種功能,例如 儲存格數據格式化, 合併儲存格, 插入數學函數甚至管理圖表。


快速指南

IronXL Generator 文件

請閱讀完整的文檔,了解 IronXL 如何在您的 C# 專案中生成各種 Excel 格式的文件。

IronXL Generator 文件
< 上一頁
使用 C# 創建 CSV 文件
下一個 >
在 .NET Core 中使用 Excel

準備開始了嗎? 版本: 2024.10 剛剛發布

免費 NuGet 下載 總下載次數: 1,023,839 查看許可證 >