NPOI là một API .NET nguồn mở để phát triển các ứng dụng để làm việc với bảng tính. Nó có sẵn miễn phí và bạn có thể sử dụng nó trong các dự án .NET của mình. NPOI đơn giản, dễ sử dụng và có thể được thiết lập dễ dàng để bắt đầu làm việc với bảng tính Excel. Trong bài viết này, chúng tôi sẽ khám phá việc làm việc với API NPOI để tạo, đọc và lưu các tệp Excel XLSX, mặc dù nó có thể hoạt động với định dạng tệp XLS theo cách tương tự. Bài viết này chứa chi tiết về việc cài đặt API NPOI, thiết lập môi trường phát triển và làm việc với bảng tính bằng NPOI.

  1. Hướng dẫn cài đặt cho API NPOI: Bước đầu tiên sử dụng API NPOI là cài đặt gói. Bạn có thể cài đặt NPOI bằng cách tải xuống gói từ trang web chính thức hoặc sử dụng Trình quản lý gói Nuget trong Visual Studio. Khi gói được cài đặt, bạn có thể bắt đầu sử dụng nó trong dự án của mình. Xem Hướng dẫn cài đặt NPOI này để tham khảo.
  2. Thiết lập môi trường phát triển: Để sử dụng API NPOI, bạn nên có môi trường phát triển sẵn sàng để làm việc với nó. Bạn có thể cài đặt Visual Studio trên máy của bạn cho mục đích này.
  3. Tạo bảng tính mới bằng API NPOI: Bây giờ môi trường của bạn được thiết lập, bạn có thể bắt đầu làm việc với API trong dự án của mình bằng cách đưa tham khảo DLL của nó.

Làm việc với bảng tính {.

Được rồi, vì vậy bây giờ bạn đã thiết lập NPOI, hãy bắt đầu sử dụng API NPOI để làm việc với các tệp XLSX. Cụ thể, chúng tôi sẽ là:

  • Tạo bảng tính mới bằng NPOI trong C#
  • Đọc dữ liệu từ tệp XLSX với NPOI
  • Lưu bảng tính Excel dưới dạng XLSX bằng NPOI

Tạo bảng tính mới bằng NPOI trong C#

Snippet mã sau đây trình bày cách tạo bảng tính mới với một bảng tính duy nhất:

using NPOI.SS.UserModel;
using NPOI.XSSF.UserModel;

// create a new workbook
IWorkbook wb = new XSSFWorkbook();

// create a new worksheet
ISheet ws = wb.CreateSheet("Sheet1");

// create a new row
IRow row = ws.CreateRow(0);

// create a new cell and set its value
ICell cell = row.CreateCell(0);
cell.SetCellValue("Hello World!");

// save the workbook
using (var fileStream = new FileStream("myWorkbook.xlsx", FileMode.Create, FileAccess.Write))
{
    wb.Write(fileStream);
}

Đọc dữ liệu từ bảng tính bằng NPOI API

Một trong những nhiệm vụ phổ biến nhất khi làm việc với bảng tính là đọc dữ liệu từ chúng. API NPOI cung cấp một số cách để đọc dữ liệu từ bảng tính. Đoạn mã sau đây trình bày cách đọc dữ liệu từ một ô trong bảng tính:

using NPOI.SS.UserModel;
using NPOI.XSSF.UserModel;

// load an existing workbook
IWorkbook wb = new XSSFWorkbook("myWorkbook.xlsx");

// get the first worksheet
ISheet ws = wb.GetSheetAt(0);

// get the first row
IRow row = ws.GetRow(0);

// get the first cell
ICell cell = row.GetCell(0);

// get the cell value
string cellValue = cell.StringCellValue;

Viết dữ liệu vào bảng tính bằng NPOI API

Một nhiệm vụ phổ biến khác khi làm việc với bảng tính là viết dữ liệu cho họ. API NPOI cung cấp một số cách để ghi dữ liệu vào bảng tính. Đoạn mã sau đây trình bày cách ghi dữ liệu vào một ô trong bảng tính:

using NPOI.SS.UserModel;
using NPOI.XSSF.UserModel;

// load an existing workbook
IWorkbook wb = new XSSFWorkbook("myWorkbook.xlsx");

// get the first worksheet
ISheet ws = wb.GetSheetAt(0);

// get the first row
IRow row = ws.GetRow(0);

// get the first cell
ICell cell = row.CreateCell(1);

// set the cell value
cell.SetCellValue("World!");

// save the workbook
using (var fileStream = new FileStream("myWorkbook.xlsx", FileMode.Create, FileAccess.Write))
{
    wb.Write(fileStream);
}

Trong ví dụ trên, chúng tôi tải một sổ làm việc hiện có và truy xuất bảng tính đầu tiên. Sau đó, chúng tôi truy xuất hàng đầu tiên và tạo một ô mới tại chỉ mục cột 1. Sau đó, chúng tôi đặt giá trị của ô và lưu sổ làm việc.

Cập nhật bảng tính hiện có bằng NPOI API

API NPOI cũng cung cấp một số cách để cập nhật bảng tính hiện có. Đoạn mã sau đây trình bày cách cập nhật giá trị của một ô trong bảng tính.

using NPOI.SS.UserModel;
using NPOI.XSSF.UserModel;

// load an existing workbook
IWorkbook wb = new XSSFWorkbook("myWorkbook.xlsx");

// get the first worksheet
ISheet ws = wb.GetSheetAt(0);

// get the first row
IRow row = ws.GetRow(0);

// get the first cell
ICell cell = row.GetCell(0);

// set the cell value
cell.SetCellValue("Hello NPOI!");

// save the workbook
using (var fileStream = new FileStream("myWorkbook.xlsx", FileMode.Create, FileAccess.Write))
{
    wb.Write(fileStream);
}

Trong ví dụ trên, chúng tôi tải một sổ làm việc hiện có và truy xuất bảng tính đầu tiên. Sau đó, chúng tôi lấy lại hàng đầu tiên và ô đầu tiên và cập nhật giá trị của ô. Cuối cùng, chúng tôi lưu sổ làm việc.

Thêm NPOI Ví dụ để làm việc với bảng tính