溫馨提示×

如何用c#實現Excel數據的導入導出

c#
小樊
221
2024-09-27 23:47:53
欄目: 編程語言

在C#中實現Excel數據的導入導出,可以使用一些第三方庫,如EPPlus、NPOI等。這些庫提供了豐富的API,可以方便地操作Excel文件。下面以EPPlus為例,介紹如何實現Excel數據的導入導出。

一、導入Excel數據

  1. 首先,需要在項目中安裝EPPlus庫??梢酝ㄟ^NuGet包管理器來安裝,命令如下:
Install-Package EPPlus
  1. 安裝完成后,可以在代碼中引入EPPlus命名空間:
using OfficeOpenXml;
  1. 接下來,需要讀取Excel文件中的數據??梢允褂靡韵麓a來讀取Excel文件中的所有工作表:
// 讀取Excel文件
FileInfo fileInfo = new FileInfo("example.xlsx");
using (ExcelPackage package = new ExcelPackage(fileInfo))
{
    // 獲取所有工作表
    var worksheetList = package.Workbook.Worksheets;
    foreach (var worksheet in worksheetList)
    {
        // 讀取工作表中的數據
        var dataTable = worksheet.Cells["A1", "D10"].LoadFromDataTable(null, true);
        // 處理數據
        foreach (DataRow row in dataTable.Rows)
        {
            Console.WriteLine($"ID: {row["ID"]}, Name: {row["Name"]}, Age: {row["Age"]}, Gender: {row["Gender"]}");
        }
    }
}

在上面的代碼中,我們首先讀取了Excel文件中的所有工作表,然后遍歷每個工作表,讀取其中的數據并進行處理。

二、導出Excel數據

  1. 使用EPPlus庫導出Excel數據的步驟與導入類似。首先需要創建一個Excel文件,并將數據寫入到文件中。以下是一個簡單的示例代碼:
// 創建一個新的Excel文件
using (ExcelPackage package = new ExcelPackage())
{
    // 添加一個新的工作表
    var worksheet = package.Workbook.Worksheets.Add("Sheet1");
    // 定義表頭
    var headers = new[] { "ID", "Name", "Age", "Gender" };
    worksheet.Cells["A1"].LoadFromArray(headers, true);
    // 定義數據
    var data = new[]
    {
        new { ID = 1, Name = "Alice", Age = 28, Gender = "Female" },
        new { ID = 2, Name = "Bob", Age = 25, Gender = "Male" },
        new { ID = 3, Name = "Charlie", Age = 32, Gender = "Male" }
    };
    // 將數據寫入到工作表中
    worksheet.Cells["A2"].LoadFromArray(data, true);
    // 保存Excel文件
    FileInfo fileInfo = new FileInfo("output.xlsx");
    package.SaveAs(fileInfo);
}

在上面的代碼中,我們首先創建了一個新的Excel文件,并添加了一個工作表。然后定義了表頭和數據,并將數據寫入到工作表中。最后保存了Excel文件。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女