کتابخانه دات نت رایگان برای صفحات گسترده اکسل®

خواندن، نوشتن، دستکاری و تبدیل فایل های XLS و XLSX از طریق کتابخانه منبع باز دات نت.

NPOI چیست؟

NPOI یک نسخه دات نت از پروژه جاوا POI است. این یک کتابخانه منبع باز دات نت برای خواندن و نوشتن فرمت های فایل Microsoft Excel است. فضای نام NPOI.HSSF امکان دستکاری فرمت فایل XLS را فراهم می کند، در حالی که NPOI فضای نام .XSSF به شما امکان می دهد فایل های XLSX ایجاد و تغییر دهید.

NPOI is a .NET version of POI Java project. It is an open source .NET library to read and write Microsoft Excel file formats. NPOI.HSSF namespace provides the ability to manipulate XLS file format, while NPOI.XSSF namespace allows you to create & modify XLSX files.

NPOI is a .NET version of POI Java project. It is an open source .NET library to read and write Microsoft Excel file formats. NPOI.HSSF namespace provides the ability to manipulate XLS file format, while NPOI.XSSF namespace allows you to create & modify XLSX files.

NPOI به شما امکان می دهد بدون وابستگی خارجی، متن اضافه کنید، لینک ها را درج کنید، سلول ها و ستون ها را ایجاد و سبک دهید، تصاویر را درج کنید و محتوای فایل های XLS و XLSX موجود را بخوانید.

Previous Next

چگونه NPOI را نصب کنیم؟

NPOI را از NuGet نصب کنید

 Install-Package NPOI -Version 2.4.1

دستکاری فایل XLSX از طریق C#

NPOI به برنامه نویسان دات نت اجازه می دهد تا صفحات گسترده را از برنامه های دات نت خود ایجاد و همچنین اصلاح کنند. به منظور اصلاح یک فایل موجود، می توانید فایل را بارگیری کنید و متن، جداول، سبک ها و موارد دیگر را به روز کنید.

ویرایش XLSX با NPOI - C#

IWorkbook wb = new XSSFWorkbook();
// Create a Worksheet
ISheet ws = wb.CreateSheet("FileFormat");
ICellStyle style = wb.CreateCellStyle();
//Setting the line of the top border
style.BorderTop = BorderStyle.Thick;
style.TopBorderColor = 256;
style.BorderLeft = BorderStyle.Thick;
style.LeftBorderColor = 256;
style.BorderRight = BorderStyle.Thick;
style.RightBorderColor = 256;
style.BorderBottom = BorderStyle.Thick;
style.BottomBorderColor = 256;
IRow row = ws.CreateRow(0);
ICell cell = row.CreateCell(1);
cell.CellStyle = style;
FileStream sw = File.Create("fileformat.xlsx");
wb.Write(sw);
sw.Close();

XLS را با NPOI به XLSX تبدیل کنید

پس از باز کردن و تغییر آن با استفاده از NPOI، مراحل را دنبال کنید تا فایل XLS را به عنوان XLSX ذخیره کنید.

  1. XSSFWorkbook جدید ایجاد کنید
  2. برای هر کاربرگ XLS XSSFSheet مناسب ایجاد کنید
  3. داده ها را از کاربرگ XLS به کاربرگ XLSX کپی کنید
  4. قالب بندی را از کاربرگ XLS به کاربرگ XLSX کپی کنید
  5. کتاب کار را با فرمت XLSX ذخیره کنید

تبدیل XLS به XLSX با NPOI - C#

HSSFWorkbook retVal = new HSSFWorkbook();
for (int i = 0; i < source.NumberOfSheets; i++)
{
	HSSFSheet hssfSheet = (HSSFSheet)retVal.CreateSheet(source.GetSheetAt(i).SheetName);
	XSSFSheet xssfsheet = (XSSFSheet)source.GetSheetAt(i);
	CopySheets(xssfsheet, hssfSheet, retVal);
}

افزودن تصویر به XLSX از طریق C#

API به توسعه دهندگان اجازه می دهد تا تصاویر را در اسناد صفحه گسترده اضافه کنند. می توانید یک تصویر اضافه کنید و ویژگی های تصویر را تنظیم کنید. API به روش های مختلف اجازه می دهد تا تصاویر را در قالب فایل XLSX به راحتی دستکاری کنند. IClientAnchor به شما این امکان را می دهد که موقعیت بالا، پایین، چپ و راست تصویر را در داخل کاربرگ تنظیم کنید.

ایجاد جدول با XSSF NPOI - C#

IWorkbook wb = new XSSFWorkbook();
ISheet sheet1 = wb.CreateSheet("First Sheet");
// Add picture data to this workbook.
byte[] bytes = File.ReadAllBytes("fileformat.png");
int pictureIdx = wb.AddPicture(bytes, PictureType.PNG);
ICreationHelper helper = wb.GetCreationHelper();
// Create the drawing patriarch. This is the top level container for all shapes.
IDrawing drawing = sheet1.CreateDrawingPatriarch();
// add a picture shape
IClientAnchor anchor = helper.CreateClientAnchor();
// set top-left corner of the picture,
// subsequent call of Picture#resize() will operate relative to it
anchor.Col1 = 3;
anchor.Row1 = 2;
IPicture pict = drawing.CreatePicture(anchor, pictureIdx);
// auto-size picture relative to its top-left corner
pict.Resize();
FileStream sw = File.Create("image.xlsx");
wb.Write(sw);
sw.Close();
 فارسی