NPOI یک API .NET با منبع باز برای توسعه برنامه های کاربردی برای کار با صفحات گسترده است. به صورت رایگان در دسترس است و می توانید از آن در پروژه های دات نت خود استفاده کنید. NPOI ساده ، آسان برای استفاده است و می تواند به راحتی تنظیم شود تا کار با صفحات گسترده اکسل شروع شود. در این مقاله ، ما کار با NPOI API را برای ایجاد ، خواندن و ذخیره پرونده های اکسل XLSX کشف خواهیم کرد ، اگرچه می تواند با فرمت پرونده XLS به همان شیوه کار کند. این مقاله شامل جزئیات مربوط به نصب NPOI API ، تنظیم محیط توسعه و کار با صفحات گسترده با استفاده از NPOI است.

  1. راهنمای نصب برای NPOI API: اولین قدم برای استفاده از API NPOI نصب بسته است. می توانید NPOI را با بارگیری بسته از وب سایت رسمی یا استفاده از مدیر بسته NUGET در ویژوال استودیو نصب کنید. پس از نصب بسته ، می توانید استفاده از آن را در پروژه خود شروع کنید. برای مرجع به این راهنمای نصب NPOI مراجعه کنید.
  2. تنظیم محیط توسعه: برای استفاده از API NPOI ، باید محیط توسعه را برای کار با آن آماده کنید. برای این منظور می توانید ویژوال استودیو را روی دستگاه خود نصب کنید.
  3. ایجاد یک صفحه گسترده جدید با استفاده از NPOI API: اکنون که محیط شما تنظیم شده است ، می توانید با استفاده از مراجعه به DLL های آن ، با API در پروژه خود کار کنید.

کار با صفحات گسترده

خوب ، بنابراین اکنون که NPOI را تنظیم کرده اید ، اجازه می دهیم با استفاده از NPOI API برای کار با پرونده های XLSX استفاده کنید. به طور خاص ، ما خواهیم بود:

  • ایجاد یک صفحه گسترده جدید با استفاده از NPOI در C#
  • خواندن داده ها از یک پرونده XLSX با NPOI
  • صرفه جویی در صفحه گسترده اکسل به عنوان XLSX با استفاده از NPOI

یک صفحه گسترده جدید با استفاده از NPOI در C# {.wp-Block-Heading ایجاد کنید

قطعه کد زیر نحوه ایجاد یک صفحه گسترده جدید با یک برگه واحد را نشان می دهد:

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);
}

خواندن داده ها از صفحات گسترده با استفاده از NPOI API {.WP-Block-Heading

یکی از متداول ترین کارها هنگام کار با صفحات گسترده ، خواندن داده ها از آنها است. NPOI API روش های مختلفی برای خواندن داده ها از صفحات گسترده ارائه می دهد. قطعه کد زیر نحوه خواندن داده ها از یک سلول را در صفحه گسترده نشان می دهد:

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;

نوشتن داده ها به صفحه گسترده با استفاده از NPOI API

یکی دیگر از کار های متداول هنگام کار با صفحات گسترده ، نوشتن داده برای آنها است. NPOI API روش های مختلفی برای نوشتن داده ها در صفحه گسترده ارائه می دهد. قطعه کد زیر نحوه نوشتن داده ها به سلول را در صفحه گسترده نشان می دهد:

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);
}

در مثال بالا ، ما یک کتاب کار موجود را بارگیری می کنیم و اولین برگه را بازیابی می کنیم. سپس ردیف اول را بازیابی می کنیم و یک سلول جدید در فهرست ستون ایجاد می کنیم. سپس مقدار سلول را تنظیم می کنیم و کتاب کار را ذخیره می کنیم.

به روزرسانی صفحات گسترده موجود با استفاده از NPOI API

NPOI API همچنین روش های مختلفی را برای به روزرسانی صفحات گسترده موجود ارائه می دهد. قطعه کد زیر نحوه به روزرسانی مقدار یک سلول را در صفحه گسترده نشان می دهد.

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);
}

در مثال بالا ، ما یک کتاب کار موجود را بارگیری می کنیم و اولین برگه را بازیابی می کنیم. سپس ردیف اول و سلول اول را بازیابی می کنیم و مقدار سلول را به روز می کنیم. سرانجام ، ما کتاب کار را ذخیره می کنیم.

نمونه های بیشتر NPOI برای کار با صفحه های گسترده