Open Source Java API pentru Microsoft Excel
Creați, citiți, editați și convertiți fișiere de foi de calcul Microsoft Excel în aplicații Java prin API-ul Open Source.
Ce este FastExcel?
Lucrul cu fișiere Excel mari este întotdeauna o mare provocare pentru programatorii de software și necesită abilități și resurse la nivel înalt pentru a-l gestiona. FastExcel este o bibliotecă open source Java Excel care permite dezvoltatorilor de software să creeze și să citească cărți de bucate Microsoft Excel XLSX în propriile Java de aplicații. Acesta ajută dezvoltatorii să lucreze cu fișiere Excel mari fără dependențe externe.
FastExcel este foarte simplu de utilizat și de a reduce amprenta de memorie și performanța ridicată prin acumularea numai a elementelor necesare. Acesta a inclus mai multe caracteristici importante pentru lucrul cu foi de calcul, cum ar fi crearea de cărți simple de gătit, aplicarea stilurilor și formatul la celule, coloane și rânduri, Setați stilul pe o gamă de celule, celule și rânduri.
FastExcel oferă suport complet pentru multithreading, ceea ce înseamnă că fiecare foaie de lucru din cartea de bucate poate fi generată de un fir diferit, sprijinind pe deplin șirurile și stilurile comune. Cititorul FastExcel este foarte eficient si citeste numai continut de celule si stiluri de discuri, grafice si alte lucruri.
Noțiuni introductive cu FastExcel
Biblioteca FastExcel necesită Java 8+. Construiește cu Maven. Vă rugăm să includeți următoarea dependență în POM
Dependența Haven
<dependency>
<groupId> org.dhatim</groupId>
<artifactId>fastexcel</artifactId>
<version>0.12.13</version>
</dependency>
De asemenea, puteți să descărcați biblioteca partajată compilată din depozitul GitHub și să o instalați.
Excel XLSX File prin Java API
Biblioteca open source FastExcel permite dezvoltatorilor de software să genereze Excel XLSX File cu doar câteva linii de Java de coduri. Este foarte ușor să adăugați o nouă carte de bucate și să adăugați diferite foi de lucru, să introduceți celule și rânduri în foaia de lucru. Biblioteca suportă mai multe caracteristici legate de formatarea textului și stil, cum ar fi schimbarea stilului celular, setarea stilului pe o serie de celule, rânduri alternative de umbre, Setați dimensiunea hârtiei și orientarea paginii.
Creează un fișier Excel cu Java de biblioteci
package com.zetcode;
import org.dhatim.fastexcel.Workbook;
import org.dhatim.fastexcel.Worksheet;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.List;
public class FastExcelSimpleWrite {
public static void main(String[] args) throws IOException {
var words = List.of("sky", "blue", "work", "falcon");
int row = 0;
int col = 0;
var f = new File("/home/janbodnar/tmp/words.xlsx");
try (var fos = new FileOutputStream(f)) {
var wb = new Workbook(fos, "Application", "1.0");
Worksheet ws = wb.newWorksheet("Sheet 1");
for (var word : words) {
ws.value(row, col, word);
row++;
}
wb.finish();
}
}
}
Excel XLSX File cu Java API
Biblioteca FastExcel a oferit un cititor foarte puternic, care permite utilizatorilor să deschidă și să citească cu ușurință o carte de bucate Excel. Este o alternativă de streaming a Apache PO, dar foarte ușor de gestionat în comparație cu Apache PO și de 10 ori mai rapid decât acesta. Acesta poate citi doar conținut de celule și stiluri de discuri, grafice și multe alte lucruri. Următorul exemplu arată cum să deschideți o carte de bucate și să citiți toate rândurile într-un mod de streaming folosind Java.
Open Read Cookbook Ross în Streaming Way prin Java
try (InputStream is = ...; ReadableWorkbook wb = new ReadableWorkbook(is)) {
Sheet sheet = wb.getFirstSheet();
try (Stream rows = sheet.openStream()) {
rows.forEach(r -> {
BigDecimal num = r.getCellAsNumber(0).orElse(null);
String str = r.getCellAsString(1).orElse(null);
LocalDateTime date = r.getCellAsDate(2).orElse(null);
});
}
}
Generația de foi de calcul multistimate prin FastExcel
Multithreading este capacitatea unei unități centrale de procesare (CPU) de a furniza mai multe fire de execuție concomitent, susținute de sistemul de operare. În cazul în care computerul are mai multe procesoare sau nuclee de procesor, sistemul de operare își asumă responsabilitatea pentru alocarea firelor către procesoare în cel mai eficient mod. Biblioteca open source FastExcel sprijină pe deplin generarea multithreaded și creează fiecare foaie de lucru un fir diferit folosind Java de coduri.
Fișe de calcul în mediul multithreading prin Java API
try (OutputStream os = ...) {
Workbook wb = new Workbook(os, "MyApplication", "1.0");
Worksheet ws1 = wb.newWorksheet("Sheet 1");
Worksheet ws2 = wb.newWorksheet("Sheet 2");
CompletableFuture cf1 = CompletableFuture.runAsync(() -> {
// Fill worksheet 1
...
});
CompletableFuture cf2 = CompletableFuture.runAsync(() -> {
// Fill worksheet 2
...
});
CompletableFuture.allOf(cf1, cf2).get();
wb.finish();
}