Apache POI HSSF
Biblioteca Java pentru fișierele binare Microsoft Excel
API-ul Java cu sursă deschisă permite citirea, scrierea și conversia foilor de calcul Excel XLS.
Apache POI HSSF este o implementare Java pură a formatului de fișier Excel '97(-2007) (BIFF8). API-ul open source gratuit oferă funcții pentru crearea, citirea, modificarea și scrierea foilor de calcul Excel XLS. Dezvoltatorii interesați să citească doar datele din foile de calcul pot folosi API-ul model de eveniment pentru a-și îndeplini nevoile. Pentru a modifica datele din foaia de calcul, poate fi utilizat API-ul model de utilizator. Este important de știut că sistemul de model de utilizator are o amprentă de memorie mai mare decât modelul de utilizator pentru evenimente de nivel scăzut, dar are avantajul major de a fi mult mai simplu de lucrat.
Apache POI HSSF oferă un suport excelent pentru funcții Excel suplimentare, cum ar fi lucrul cu foi și formule, crearea de stiluri de celule prin completarea cu culori și chenare, fonturi, anteturi și subsoluri, forme, validări de date, imagini, hyperlinkuri și multe altele.
Noțiuni introductive cu Apache POI HSSF
În primul rând, trebuie să aveți Java Development Kit (JDK) instalat pe sistemul dvs. Dacă îl aveți deja, treceți la pagina de descărcare a Apache POI pentru a obține cea mai recentă versiune stabilă într-o arhivă. Extrageți conținutul fișierului ZIP în orice director de unde bibliotecile necesare pot fi legate la programul dvs. Java. Asta e tot!
Referința la Apache POI în proiectul Java bazat pe Maven este și mai simplă. Tot ce aveți nevoie este să adăugați următoarea dependență în pom.xml și să lăsați IDE-ul să preia și să facă referire la fișierele Apache POI Jar.
Dependența Apache POI Maven
<!-- https://mvnrepository.com/artifact/org.apache.poi/poi -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-scratchpad</artifactId>
<version>4.0.0</version>
</dependency>
Creați un registru de lucru Excel și adăugați foi prin intermediul API-urilor Java
Biblioteca open-source Apache POI HSSF permite dezvoltatorilor de software să creeze un nou registru de lucru Microsoft Excel în format de fișier XLS. Dezvoltatorii pot adăuga cu ușurință noi foi de lucru la colecție dintr-o instanță existentă a registrului de lucru.
Creați un nou fișier XLS
// create a new workbook
Workbook workbook = new HSSFWorkbook();
OutputStream outputStream = new FileOutputStream("CreateXls.xls");
// create a new sheet
Sheet sheet = workbook.createSheet("Apache POI XSSF");
// create a new row
Row row = sheet.createRow(1);
// create a new cell
Cell cell = row.createCell(1);
// set cell value
cell.setCellValue("File Format Developer Guide");
// save file
workbook.write(outputStream);
API Java pentru a citi și a scrie în fișierul Excel existent
Apache POI HSSF le permite dezvoltatorilor de software să acceseze și să citească date din registrul de lucru Microsoft Excel existent. Citirea într-un fișier este foarte simplă, creați mai întâi o instanță de registru de lucru dintr-o foaie de lucru Excel și ajungeți la foaia dorită. Apoi, creșteți numărul rândului și repetați peste toate celulele dintr-un rând. Repetați acești pași până când toate datele sunt citite. Apache POI HSSF oferă, de asemenea, funcții pentru modificarea unui fișier Excel existent.
Citiți conținutul celulei prin Java
// open xls file
InputStream inputStream = new FileInputStream("document.xls");
Workbook workbook = WorkbookFactory.create(inputStream);
// get sheet
Sheet sheet = workbook.getSheetAt(0);
// get row
Row row = sheet.getRow(1);
// get cell
Cell cell = row.getCell(1);
// display data
System.out.println(cell);
Desenați forme și adăugați imagini în foaia de calcul Excel
Apache POI-HSSF oferă caracteristici pentru desenarea formelor în foaia de calcul Excel. Acceptă desenarea formelor folosind instrumentele de desen Microsoft Office. Desenați diferite forme, cum ar fi ovale, linie, dreptunghi și setați orice alte stiluri de formă. În Apache POI, imaginile fac parte din desen, acceptând tipurile de imagini PNG, JPG și DIB în acest moment.
Desenați dreptunghi în XLS prin Java
// create a new workbook
Workbook workbook = new HSSFWorkbook();
OutputStream outputStream = new FileOutputStream("DrawShape.xls");
// create a new sheet
Sheet sheet = workbook.createSheet("Apache POI XSSF");
// create a new row
Row row = sheet.createRow(1);
// create a new cell
Cell cell = row.createCell(1);
// create rectangle shape
HSSFPatriarch patriarch = (HSSFPatriarch) sheet.createDrawingPatriarch();
HSSFClientAnchor a = new HSSFClientAnchor(0, 0, 1023, 254, (short) 1, 0, (short) 1, 0);
HSSFSimpleShape shape = patriarch.createSimpleShape(a);
shape.setShapeType(HSSFSimpleShape.OBJECT_TYPE_RECTANGLE);
// save file
workbook.write(outputStream);
Gestionarea fonturilor și îmbinarea celulelor foilor de calcul XLS
Apache POI-HSSF oferă metode care permit programatorilor Java să gestioneze fonturile din foile de calcul Excel. Putem crea fontul, seta culoarea, seta dimensiunea etc. Fontul este o interfață care oferă metode de a gestiona fontul. Apache POI-HSSF le permite dezvoltatorilor să îmbine celulele într-o singură celulă. Pentru a face acest lucru, oferă metode care iau indici de celule ca argument și îmbină celulele într-o singură celulă mare.
Setați fontul pentru foaia de calcul XLS prin Java
// create a new XLS file
OutputStream outfile = new FileOutputStream("SetFont.xls");
Workbook wb = new HSSFWorkbook();
// create a new sheet
Sheet sheet = wb.createSheet("Apache POI XSSF");
// create a new row
Row row = sheet.createRow(1);
// create a new cell
Cell cell = row.createCell(1);
// set style
CellStyle style = wb.createCellStyle();
// set text
cell.setCellValue("File Format Developer Guide");
// set font settings
Font font = wb.createFont();
font.setFontHeightInPoints((short) 14);
font.setFontName("Arial");
font.setItalic(true);
font.setBold(true);
// apply font
style.setFont(font);
cell.setCellStyle(style);
// save
wb.write(outfile);