1. Produkti
  2.   Izklājlapa
  3.   Java
  4.   Apache POI-XSSF 

Apache POI-XSSF 

 
 

Atvērtā pirmkoda Java API Microsoft® Excel XLSX failiem

Izveidojiet, rediģējiet un konvertējiet Excel XLSX izklājlapas CSV un HTML failu formātos, izmantojot Java bibliotēku.

Kas ir Apache POI-XSSF?

Apache POI-XSSF ir tīra Excel 2007 XLSX faila formāta Java ieviešana. API nodrošina procedūras Excel XLSX failu izveidei, lasīšanai, modificēšanai un rakstīšanai. Tas nodrošina zema līmeņa struktūras tiem, kam ir īpašas vajadzības. Tas nodrošina arī notikumu modeļa API efektīvai tikai lasīšanas piekļuvei, kā arī pilna lietotāja modeļa API XLSX failu izveidei, lasīšanai un modificēšanai. Apache POI-XSSF nodrošina lielisku atbalstu papildu Excel funkcijām, piemēram, darbam ar lapām, formulām, šūnu stilu izveidi, aizpildot krāsas un apmales, fontus, galvenes un kājenes, formas, datu validācijas, attēlus, hipersaites un daudz ko citu.

Previous Next

Darba sākšana ar Apache POI XSSF

Pirmkārt, jūsu sistēmā ir jābūt instalētam Java izstrādes komplektam (JDK). Ja jums tas jau ir, dodieties uz Apache POI lejupielādes lapu, lai arhīvā iegūtu jaunāko stabilo versiju. Izvelciet ZIP faila saturu jebkurā direktorijā, no kuras vajadzīgās bibliotēkas var saistīt ar jūsu Java programmu. Tas ir viss!

Atsauces uz Apache POI jūsu Maven balstītajā Java projektā ir vēl vienkāršāk. Viss, kas jums nepieciešams, ir pievienot tālāk norādīto atkarību savā pom.xml un ļaut IDE ielādēt un atsaukties uz Apache POI Jar failus.

Apache POI Maven atkarība

<!-- https://mvnrepository.com/artifact/org.apache.poi/poi -->
<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi-ooxml</artifactId>
    <version>4.1.0</version>
</dependency>

Izveidojiet lielas Excel izklājlapas, izmantojot Java API

Apache POI XSSF piedāvā zemu atmiņas apjomu, izmantojot SXSSF API, lai apstrādātu lielu datu ierakstīšanu MS Excel failos. Tas ļauj rakstīt ļoti lielus failus, nepietrūkst atmiņas, jo atmiņā vienlaikus tiek saglabāta tikai konfigurējama rindu daļa. POI-SXSSF samazina atmiņas apjomu, ierobežojot piekļuvi rindām, kas atrodas bīdāmā logā, savukārt XSSF nodrošina piekļuvi visām dokumenta rindām. Vecākas rindas, kas vairs nav logā, kļūst nepieejamas, jo tiek ierakstītas diskā. Varat izveidot lielu Excel failu java, veicot šādas darbības

Izveidojiet lielu Excel failu, izmantojot Java

  1. Izveidojiet jaunu SXSSFWorkbook un saglabājiet atmiņā 100 rindas, vairāk nekā rindas tiks izskalotas diskā
  2. Izveidojiet jaunu darblapu, izmantojot metodi createSheet().
  3. Ievietojiet datus 2000 rindās un 2000 šūnās, izmantojot iekšā CreateRow(), createCell() un setCellValue("Jūsu dati") un ligzdotu cilpu
  4. Saglabājiet failu, izmantojot FileOutputStream(), un nododiet izvades faila nosaukumu
  5. Ierakstiet failā, izmantojot metodi SXSSFWorkbook.Write() un nododiet FileOutputStream kā parametru

Izveidojiet lielu Excel failu

// create a new SXSSFWorkbook
SXSSFWorkbook wb = new SXSSFWorkbook(100);
Sheet sh = wb.createSheet();
// insert 2000 rows
for(int rownum = 0; rownum < 2000; rownum++){
    Row row = sh.createRow(rownum);
    // insert data in 20000 cells
    for(int cellnum = 0; cellnum < 10; cellnum++){
    Cell cell = row.createCell(cellnum);
    cell.setCellValue("Row Number: "+ rownum + " Cell Number: "+ cellnum);
    }
}
// save file
FileOutputStream out = new FileOutputStream("LargeDcument.xlsx");
wb.write(out);
out.close();

Java API Excel darbgrāmatu izveidei un izklājlapu pievienošanai

Apache POI XSSF ļauj datorprogrammētājiem izveidot jaunu Excel darbgrāmatu XLSX faila formātā. Kad izstrādātāji ir izveidojuši darbgrāmatu, darblapas tiek izveidotas no esošas darbgrāmatas instances, un jaunizveidotā lapa automātiski tiek pievienota darbgrāmatai pēc kārtas.

Izveidojiet Excel darbgrāmatu un pievienojiet lapas

// create a new XLSX file
Workbook workbook = new XSSFWorkbook();
OutputStream outputStream = new FileOutputStream("CreateXlsx.xlsx");
// create a new sheet
Sheet sheet = workbook.createSheet("Apache POI XSSF");
// create a new sheet
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);

Pārvērtiet Excel izklājlapu uz CSV un citu failu formātu

Java izstrādātāji un programmētāji var viegli pārvērst Excel izklājlapu CSV faila formātā, izmantojot Apache POI XSSF API. CSV apzīmē Comma-Separated-Values un ir ļoti izplatīts formāts, ko izmanto datu apmaiņai starp daudzām lietojumprogrammām. Pirmkārt, izstrādātājiem ir jāizlasa ievades XLS fails, izmantojot Apache POI XSSF API, un pēc tam jāieraksta iegūtā informācija CSV failos.

Konvertējiet XLSX uz CSV

// Open and existing XLSX file
FileInputStream fileInStream = new FileInputStream("LargeDocument.xlsx");
XSSFWorkbook workBook = new XSSFWorkbook(fileInStream);
XSSFSheet selSheet = workBook.getSheetAt(0);
// Loop through all the rows
Iterator rowIterator = selSheet.iterator();
while (rowIterator.hasNext()) {
    Row row = rowIterator.next();
    // Loop through all rows and add ","
    Iterator cellIterator = row.cellIterator();
    StringBuffer stringBuffer = new StringBuffer();
    while (cellIterator.hasNext()) {
    Cell cell = cellIterator.next();
    if (stringBuffer.length() != 0) {
        stringBuffer.append(",");
    }
    stringBuffer.append(cell.getStringCellValue());
    }
    System.out.println(stringBuffer.toString());
}
workBook.close();

XSSF uzlabojums galvenēm un kājenēm

Apache POI XSSF spēj apstrādāt pirmās lapas galvenes un kājenes, kā arī pāra/nepāra galvenes un kājenes. Galvenes un kājenes ir ļoti svarīga Excel izklājlapas daļa. Parasti tajā ir ietverta papildu informācija, piemēram, datumi, lappušu numuri, autora vārds un zemsvītras piezīmes, kas palīdz sakārtot ilgākus dokumentus un tos ir vieglāk lasīt. Visus galvenes/kājenes rekvizītu karogus var apstrādāt XSSF. Nepāra galvene un kājene ir noklusējuma galvene un kājene. Tas tiek rādīts visās lapās, kurās netiek rādīta ne pirmās lapas galvene, ne pāra lapas galvene.

Šūnu sapludināšana un teksta ekstrakcija Excel XLSX failos

Apache POI XSSF nodrošina iespēju, kas ļauj Java programmētājiem sapludināt vairākas šūnas vienā Excel izklājlapas šūnā. Tajā ir iekļautas metodes, kas izmanto šūnu indeksus kā argumentu un apvieno šūnas vienā lielā šūnā. Viena no prasīgākajām funkcijām ir iespēja izvilkt tekstu no XLSX faila un izmantot to atbilstoši savām vajadzībām. Apache POI ir nodrošinājis pamata teksta izvilkšanu visiem projekta atbalstītajiem failu formātiem. Uzlabotas teksta ekstrakcijas vajadzībām, tostarp bagātinātā teksta izvilkšanai (piemēram, formatēšanai un stilam), kā arī XML un HTML izvadei, Apache POI cieši sadarbojas ar Apache Tika, lai nodrošinātu POI darbināmus Tika parsētājus visiem projekta atbalstītajiem failu formātiem.

 Latviski