使用IRONXL

如何在 C# 中寫入 CSV 檔案中的數據

已更新 2024年3月31日
分享:

本文將探討如何使用IronXL寫入CSV檔案。

IronXL 庫

IronXL 是一個 .NET Excel 庫,提供全面的功能來在 C# 應用程式中創建、讀取和編輯電子表格文件。它在性能和輸出準確性方面表現卓越。它支持各種電子表格工作簿文件格式,如 XLS、XLSX、XLSM、CSV 和 TSV。此外,還可以讓你 保存或匯出資料 從Excel檔案轉換為CSV、JSON、HTML、二進位、字節陣列、DataSet或DataTable格式。

使用IronXL,開發人員可以無縫地處理工作表和儲存格範圍,提供了一種優雅的方式來操作數據。它允許 輕鬆編輯公式 並便於重算工作表中的公式。 排序資料 根據範圍、列或行進行操作是很簡單的。您還可以通過修改佈局來 凍結窗格, 自動調整行/列,和 添加/刪除行/列IronXL 提供了使用者密碼保護 Excel 檔案的能力,並設置編輯權限。此外,它還提供了功能來 添加、刪除和提取圖像 從 Excel 工作表中提取數據。該庫包含各種 Excel 函數,支持多種單元格數據格式。這使得 IronXL 成為處理 Excel 文件最直觀的 API 之一。

IronXL 的一個顯著優勢是,它不需要在機器上安裝 Microsoft Excel 或 Office Interop 依賴項。這是一個獨立的解決方案,可跨多個平台運行,並且兼容 .NET 版本 7、6 和 5。它還支持 .NET Core 2 和 3,以及標準 2 版本。對於處理 Excel 試算表,IronXL 兼容 .NET Framework 4.5 及更高版本。

建立主控臺應用程式

建議使用 Visual Studio 的最新版本來建立應用程式,作為開始。Visual Studio 是 C# 開發的官方 IDE,您必須安裝它。您可以從以下網址下載 Microsoft Visual Studio 網站,如果尚未安裝。

以下步驟將創建一個名為 "DemoApp" 的新專案。

  1. 打開 Visual Studio,然後點擊 "Create a New Project"。

    如何在 C# 中寫入 CSV 文件,圖 1:打開 Visual Studio

    打開 Visual Studio

  2. 選擇控制台應用程式並點擊“下一步”。

    如何在 C# 中將數據寫入 CSV 文件,圖 2:在 Visual Studio 中創建一個新項目

    在 Visual Studio 中創建一個新項目

  3. 設置項目的名稱

    如何在 C# 中寫入 CSV 文件,圖 3:配置您的新項目

    配置你的新項目

  4. 選擇 .NET 版本。選擇穩定版本 .NET 6.0。

    如何在 CSV 檔案中寫入資料(使用 C#),圖 4:.NET Framework 的選擇

    .NET 框架選擇

安裝 IronXL 庫

一旦項目創建完成,需要在項目中安裝 IronXL 庫。請按照以下步驟安裝:

  1. 從解決方案資源管理器或工具打開 NuGet 套件管理器。

    如何在 C# 中寫入 CSV 文件中的數據,圖 5:導航到 NuGet Package Manager

    導航到 NuGet 套件管理員

  2. 瀏覽 IronXL 庫並選擇當前項目。點擊安裝。

    如何在C#中寫入CSV文件數據,圖6:在NuGet包管理器UI中搜索並安裝IronXL包

    在 NuGet 套件管理器 UI 中搜索和安裝 IronXL 套件

Program.cs 文件的頂部添加以下命名空間

using IronXL;
using IronXL;
Imports IronXL
VB   C#

用 C# 創建一本新的工作簿

IronXL 提供創建空白工作簿的功能。工作簿是一個包含多個工作表的電子表格。數據存儲在單元格中。CSV 也看起來像一個電子表格,但具有 CSV 文件擴展名。

// Creates a new Instance of WorkBook SpreadSheet
WorkBook workBook = new WorkBook();
// Creates a new Instance of WorkBook SpreadSheet
WorkBook workBook = new WorkBook();
' Creates a new Instance of WorkBook SpreadSheet
Dim workBook As New WorkBook()
VB   C#

現在,讓我們在IronXL中創建一個工作表 Workbook有多種方法可以在工作簿中創建工作表。

// Adds sheet1 to the workbook
WorkSheet sheet = workBook.DefaultWorkSheet;

// Creates a worksheet with name Sheet1
WorkSheet sheet = workBook.CreateWorkSheet("Sheet1");
// Adds sheet1 to the workbook
WorkSheet sheet = workBook.DefaultWorkSheet;

// Creates a worksheet with name Sheet1
WorkSheet sheet = workBook.CreateWorkSheet("Sheet1");
' Adds sheet1 to the workbook
Dim sheet As WorkSheet = workBook.DefaultWorkSheet

' Creates a worksheet with name Sheet1
Dim sheet As WorkSheet = workBook.CreateWorkSheet("Sheet1")
VB   C#

如果您想在現有的工作簿中新增更多工作表,請使用 CreateWorkSheet 方法。

注意: 您可以使用 WorkBook.LoadCSV 如果 CSV 檔案已經存在的方法。你可以看到這個 程式碼範例頁面 載入現有的CSV文件。

寫入資料到 WorkSheet

利用 IronXL 撰寫 CSV 檔案非常簡單。它提供了寫入資料到 CSV 的 Excel 功能。可以使用儲存格參考將數值添加到指定的位置。這裡,我將使用 foreach 迴圈來新增一些員工的記錄。

string [] employeenames = { "John", "Peter", "Harry", "Kevin", "Brian" };
int i = 2;
sheet ["A1"].Value = "ID";
sheet ["B1"].Value = "Name";
sheet ["C1"].Value = "Salary";

foreach (var employee in employeenames)
{
    sheet ["A" + i].Value = i;
    sheet ["B" + i].Value = employee;
    sheet ["C" + i].Value = i * 1000;
    i++;
}
string [] employeenames = { "John", "Peter", "Harry", "Kevin", "Brian" };
int i = 2;
sheet ["A1"].Value = "ID";
sheet ["B1"].Value = "Name";
sheet ["C1"].Value = "Salary";

foreach (var employee in employeenames)
{
    sheet ["A" + i].Value = i;
    sheet ["B" + i].Value = employee;
    sheet ["C" + i].Value = i * 1000;
    i++;
}
Dim employeenames() As String = { "John", "Peter", "Harry", "Kevin", "Brian" }
Dim i As Integer = 2
sheet ("A1").Value = "ID"
sheet ("B1").Value = "Name"
sheet ("C1").Value = "Salary"

For Each employee In employeenames
	sheet ("A" & i).Value = i
	sheet ("B" & i).Value = employee
	sheet ("C" & i).Value = i * 1000
	i += 1
Next employee
VB   C#

在上面的代碼範例中,創建了一個 employeenames 陣列並設定第一行的標頭:ID、Name、Salary。還初始化了一個變數 i,其值為 2,這將從標頭下的第二行開始輸入記錄。foreach 迴圈從列表中擷取一個員工並將其添加到具有 ID 和薪水值的行中。在迴圈結束之前,應該遞增 i 的值,否則每條記錄將被添加到同一行。

將數據保存到CSV文件

最後一步是保存CSV文件。IronXL提供了該方法 SaveAsCsv 將工作簿保存為 CSV 文件。此方法的第一個參數是 CSV 文件名稱,第二個參數是分隔符。

workBook.SaveAsCsv("sample.csv", ",");
workBook.SaveAsCsv("sample.csv", ",");
workBook.SaveAsCsv("sample.csv", ",")
VB   C#

內容如下:

using System;
using IronXL;

WorkBook workBook = WorkBook.Create();
WorkSheet sheet = workBook.CreateWorkSheet("Sheet1");

string [] employeenames = { "John", "Peter", "Harry", "Kevin", "Brian" };
int i = 2;
sheet ["A1"].Value = "ID";
sheet ["B1"].Value = "Name";
sheet ["C1"].Value = "Salary";

foreach (var employee in employeenames)
{
    sheet ["A" + i].Value = i;
    sheet ["B" + i].Value = employee;
    sheet ["C" + i].Value = i * 1000;
    i++;
}

workBook.SaveAsCsv("sample.csv", ",");
using System;
using IronXL;

WorkBook workBook = WorkBook.Create();
WorkSheet sheet = workBook.CreateWorkSheet("Sheet1");

string [] employeenames = { "John", "Peter", "Harry", "Kevin", "Brian" };
int i = 2;
sheet ["A1"].Value = "ID";
sheet ["B1"].Value = "Name";
sheet ["C1"].Value = "Salary";

foreach (var employee in employeenames)
{
    sheet ["A" + i].Value = i;
    sheet ["B" + i].Value = employee;
    sheet ["C" + i].Value = i * 1000;
    i++;
}

workBook.SaveAsCsv("sample.csv", ",");
Imports System
Imports IronXL

Private workBook As WorkBook = WorkBook.Create()
Private sheet As WorkSheet = workBook.CreateWorkSheet("Sheet1")

Private employeenames() As String = { "John", "Peter", "Harry", "Kevin", "Brian" }
Private i As Integer = 2
Private sheet ("A1").Value = "ID"
Private sheet ("B1").Value = "Name"
Private sheet ("C1").Value = "Salary"

For Each employee In employeenames
	sheet ("A" & i).Value = i
	sheet ("B" & i).Value = employee
	sheet ("C" & i).Value = i * 1000
	i += 1
Next employee

workBook.SaveAsCsv("sample.csv", ",")
VB   C#

輸出

如何在C#中寫入CSV檔案,第7圖:輸出CSV檔案

輸出 CSV 檔案

摘要

本文介紹了在 C# 中使用 IronXL 編寫 CSV 檔案的簡單方法。IronXL 也提供了方便處理現有 CSV 檔案的功能。它還允許您編寫 CSV 檔案、創建新的 Excel 檔案並用簡單的語法寫入數據。IronXL 也可以用來在未安裝 Microsoft Office 的情況下讀寫 Excel 檔案。關於不同試算表格式之間的轉換,您可以參考這篇 程式碼範例頁面鐵XL(IronXL)在開發中是免費的,並且可以商業使用授權。您還可以免費試用鐵XL(IronXL) 試用 商業用途。

< 上一頁
如何在ASP.NET中查看Excel
下一個 >
如何使用 C# 設定 Excel 儲存格的背景顏色

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

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