使用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# 開發的官方集成開發環境,您必須安裝它。 您可以從Microsoft Visual Studio 網站如果尚未安裝。

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

  1. 打開 Visual Studio,然後點擊「建立新專案」。

    如何在 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 Framework 選擇

安裝 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 檔案很簡單。 它提供 Excel 功能來將數據寫入 CSV。可以使用單元格引用在指定位置添加值。 在這裡,我將使用 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,將從標題下方的第 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 檔案

摘要

本文介紹了一種使用IronXL在C#中撰寫CSV文件的簡單方法。 IronXL 也提供方便的功能來處理現有的 CSV 文件。 它同時允許您寫入 CSV 文件、創建新的 Excel 文件並通過簡單的語法將數據寫入其中。 IronXL 也可以在未安裝 Microsoft Office 的情況下讀取和寫入 Excel 文件。 要在不同的電子試算表格式之間進行轉換,您可以查看此程式碼範例頁面.

IronXL 是免費供開發使用的,並可以獲得商業用途的許可。 您還可以試用 IronXL 免費版試用商業用途。

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

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

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