1. Produkter
  2.   Regneark
  3.   Java
  4.   Apache POI-XSSF 

Apache POI-XSSF 

 
 

Open Source Java API for Microsoft® Excel XLSX Files

Lag, rediger og konverter Excel XLSX-regneark til CSV- og HTML-filformater via Java Library.

Hva er Apache POI-XSSF?

Apache POI-XSSF er en ren Java-implementering av Excel 2007 XLSX-filformatet. API-en gir prosedyrer for å lage, lese, endre og skrive Excel XLSX-filer. Det gir strukturer på lavt nivå for de med spesielle behov. Den gir også en hendelsesmodell-API for effektiv skrivebeskyttet tilgang, samt en full brukermodell-API for å lage, lese og endre XLSX-filer. Apache POI-XSSF gir god støtte for ekstra Excel-funksjoner som å jobbe med ark, formler, lage cellestiler ved å fylle farger og rammer, fonter, topp- og bunntekster, former, datavalideringer, bilder, hyperkoblinger og mye mer.

Previous Next

Komme i gang med Apache POI XSSF

Først av alt må du ha Java Development Kit (JDK) installert på systemet ditt. Hvis du allerede har det, fortsett til Apache POIs nedlastingsside for å få den siste stabile utgivelsen i et arkiv. Pakk ut innholdet i ZIP-filen i en hvilken som helst katalog der de nødvendige bibliotekene kan kobles til Java-programmet. Det er alt!

Å referere til Apache POI i ditt Maven-baserte Java-prosjekt er enda enklere. Alt du trenger er å legge til følgende avhengighet i pom.xml og la IDE-en hente og referere til Apache POI Jar-filene.

Apache POI Maven Dependency

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

Lag store Excel-regneark ved hjelp av Java API

Apache POI XSSF tilbyr fotavtrykk med lavt minne via SXSSF API for håndtering av store dataskriving til MS Excel-filer. Dette gjør det mulig å skrive veldig store filer uten å gå tom for minne, da bare en konfigurerbar del av radene holdes i minnet til enhver tid. POI-SXSSF oppnår sitt lave minneavtrykk ved å begrense tilgangen til radene som er innenfor et skyvevindu, mens XSSF gir tilgang til alle rader i dokumentet. Eldre rader som ikke lenger er i vinduet blir utilgjengelige, da de skrives til disken. Du kan lage en stor excel-fil i java ved å bruke følgende trinn

Lag stor Excel-fil ved hjelp av Java

  1. Opprett en ny SXSSF-arbeidsbok og behold 100 rader i minnet, flere rader vil bli tømt til disken
  2. Opprett et nytt regneark ved å bruke createSheet()-metoden
  3. Sett inn data i 2000 rader og 2000 celler ved å bruke createRow(), createCell() og setCellValue("Dine data") inne og en nestet løkke
  4. Lagre filen ved hjelp av FileOutputStream() og send utdatafilnavnet
  5. Skriv til fil med SXSSFWorkbook.Write()-metoden og send FileOutputStream som en parameter

Lag en stor Excel-fil

// 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-er for Excel-arbeidsbokoppretting og arktillegg

Apache POI XSSF gjør det mulig for dataprogrammerere å lage en ny Excel-arbeidsbok i XLSX-filformat. Når utviklere har opprettet arbeidsboken, opprettes regneark fra en eksisterende forekomst av arbeidsboken, og det nyopprettede arket legges automatisk til i rekkefølge til arbeidsboken.

Lag Excel-arbeidsbok og legg til ark

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

Konverter et Excel-regneark til CSV og annet filformat

Java-utviklere og programmerere kan enkelt konvertere et Excel-regneark til et CSV-filformat ved hjelp av Apache POI XSSF API. CSV står for Comma-Separated-Values og er et veldig vanlig format som brukes for å utveksle data mellom mange applikasjoner. For det første må utviklere lese XLS-inndatafilen ved hjelp av Apache POI XSSF API og deretter skrive uttrukket informasjon til CSV-filer.

Konverter XLSX til 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-forbedring for topp- og bunntekst

Apache POI XSSF har muligheten til å håndtere topp- og bunntekster på første side, samt partall/oddetalls topp- og bunntekst. Topptekster og bunntekster er en svært viktig del av et Excel-regneark. Den inneholder vanligvis ekstra informasjon som datoer, sidetall, forfatterens navn og fotnoter, som hjelper til med å holde lengre dokumenter organisert og lettere å lese. Alle topp-/bunntekst-egenskapsflagg kan håndteres i XSSF. Oddetopp- og bunntekst er standardtopp- og bunntekst. Den vises på alle sider som ikke viser verken førstesideoverskrift eller partallsideoverskrift.

Slå sammen celler og tekstutvinning i Excel XLSX-filer

Apache POI XSSF gir muligheten som lar Java-programmerere slå sammen flere celler til en enkelt celle i et Excel-regneark. Den har inkludert metoder som tar celleindekser som et argument og slår sammen cellene til en enkelt stor celle. En av de mest krevende funksjonene er muligheten til å trekke ut tekst fra en XLSX-fil og bruke den i henhold til dine behov. Apache POI har gitt grunnleggende tekstutvinning for alle prosjektstøttede filformater. For avanserte tekstutvinningsbehov, inkludert rik tekstutvinning (som formatering og stiling), sammen med XML- og HTML-utdata, jobber Apache POI tett med Apache Tika for å levere POI-drevne Tika Parsers for alle prosjektstøttede filformater.

 Norsk