1. Termékek
  2.   Táblázat
  3.   Java
  4.   FastExcel
 
  

Nyitott forrás Java API a Microsoft Excel Spreadsheets számára

Microsoft Excel-táblázat-fájlok létrehozása, olvasása, szerkesztése és konvertálása Java alkalmazásokban a nyílt forráskódú API-n keresztül.

Mi az a FastExcel?

A nagy Excel fájlokkal való munka mindig nagy kihívást jelent a szoftverprogramozók számára, és magas szintű készségeket és erőforrásokat igényel. FastExcel egy nagyon erős nyílt forráskódú Java Excel könyvtár, amely lehetővé teszi a szoftverfejlesztők számára, hogy létrehozzák és olvassák a Microsoft Excel XLSX főkönyvet saját Java alkalmazásukban. Segít a fejlesztőknek dolgozni a nagy Excel fájlokat külső függőségek nélkül.

A FastExcel nagyon egyszerű használni és csökkenteni a memória lábnyomát és a nagy teljesítményt csak szükséges elemek felhalmozásával. Számos fontos funkciót tartalmazott az olyan táblákkal való munkavégzéshez, mint például az egyszerű szakácskönyvek létrehozása, stílusokat és formázást alkalmaznak a sejtekre, oszlopokra és sorokra, Állítsa be a stílust a sejtek, egyesítő sejtek és sorok széles skáláján, árnyékolja az alternatív sorokat, állítsa be a papírméretetet és az oldal orientációját, állítsa be az oldalt, hozzon létre egy fagyasztott serpenyőt és így tovább.

FastExcel teljes támogatást nyújt a többszörözéshez, ami azt jelenti, hogy a szakácskönyvben minden munkalapot más szálak generálhatnak, miközben teljes mértékben támogatják a megosztott karakterláncokat és stílusokat. A FastExcel olvasó nagyon hatékony, és csak a sejtek tartalmát és eldobott stílusokat, grafikonokat és egyéb dolgokat olvassa el.

Previous Next

A FastExcel használatának első lépései

A FastExcel könyvtárhoz Java 8+ szükséges. Építsd a Mavennel. Kérjük, adja meg a következő függőséget a POM-ban

FastExcel Maven-függőség

<dependency>
<groupId> org.dhatim</groupId>
<artifactId>fastexcel</artifactId>
<version>0.12.13</version>
</dependency>

letöltheti az összeállított megosztott könyvtárat a GitHub-tárhelyből, és telepítheti.

Excel XLSX fájl létrehozása Java API-n keresztül

A nyílt forráskódú FastExcel könyvtár lehetővé teszi a szoftverfejlesztők számára Excel XLSX fájl létrehozását néhány soros Java kóddal. Nagyon egyszerű új munkafüzet hozzáadása, különböző munkalapok hozzáadása, cellák és sorok beszúrása a munkalapon belül. A könyvtár számos, a szöveg formázásával és stílusával kapcsolatos funkciót támogat, például a cella stílusának megváltoztatását, a cellák stílusának beállítását, az alternatív sorok árnyékolását, a papírméret és az oldaltájolás beállítása és így tovább.

Hozzon létre új Excel Fie-t a Java Library segítségével

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();
        }
    }
}

Olvasson Excel XLSX fájlt a Java API-n keresztül

A FastExcel könyvtár nagyon hatékony olvasót biztosít, amely lehetővé teszi a felhasználók számára az Excel-munkafüzetek egyszerű megnyitását és olvasását. Ez az Apache POI streaming alternatívája, de az Apache POI-hoz képest nagyon egyszerűen kezelhető, és 10-szer gyorsabb nála. Csak a cella tartalmát tudja olvasni, és eldobja a stílusokat, grafikonokat és sok más dolgot. A következő példa bemutatja, hogyan lehet megnyitni egy munkafüzetet, és elolvasni az összes sort streaming módon Java használatával.

Munkafüzet sorainak megnyitása és olvasása a Streaming Way-ben Java-n keresztül

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

Többszálú táblázatkészítés a FastExcel segítségével

A multithreading a központi feldolgozó egység (CPU) azon képessége, hogy egyidejűleg több szálat biztosítson a végrehajtáshoz, az operációs rendszer támogatásával. Ha a számítógép több processzorral vagy processzormaggal rendelkezik, az operációs rendszer felelősséget vállal azért, hogy a szálakat a processzorokhoz a leghatékonyabb módon rendelje hozzá. A nyílt forráskódú FastExcel könyvtár teljes mértékben támogatja a többszálú generálást, és minden munkalaphoz más szálat hoz létre Java kód segítségével.

Táblázatok létrehozása Multithreading környezetben Java API-n keresztül

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();
}
 Magyar