1. Des produits
  2.   Tableur
  3.   Java
  4.   FastExcel
 
  

API Java Open Source pour les feuilles de calcul Microsoft Excel

Créez, lisez, modifiez et convertissez des fichiers de feuille de calcul Microsoft Excel dans des applications Java via l'API Open Source.

Qu'est-ce que Fast Excel ?

Travailler avec de gros fichiers Excel est toujours un grand défi pour les programmeurs de logiciels et nécessite des compétences et des ressources de haut niveau pour le gérer. FastExcel est une bibliothèque Java Excel open source très puissante qui permet aux développeurs de logiciels de créer et de lire des classeurs Microsoft Excel XLSX dans leurs propres applications Java. Il aide les développeurs à travailler avec de gros fichiers Excel sans aucune dépendance externe.

FastExcel est très simple à utiliser et réduit l'empreinte mémoire et les hautes performances en accumulant uniquement les éléments nécessaires. Il a inclus plusieurs fonctionnalités importantes pour travailler avec des feuilles de calcul telles que la création de classeurs simples, l'application de styles et la mise en forme aux cellules, aux colonnes et aux lignes, la définition du style sur une plage de cellules, la fusion de cellules et de lignes, l'ombrage des lignes alternées, la définition de la taille du papier et l'orientation de la page. , définissez les marges de la page, créez un volet de gel, etc.

FastExcel fournit une prise en charge complète du multithreading, ce qui signifie que chaque feuille de calcul du classeur peut être générée par un thread différent, tout en prenant pleinement en charge les chaînes et les styles partagés. Le lecteur FastExcel est très efficace et ne lit que le contenu des cellules et supprime les styles, les graphiques et autres éléments.

Previous Next

Premiers pas avec Fast Excel

La bibliothèque FastExcel nécessite Java 8+. Construire avec Maven. Veuillez inclure la dépendance suivante dans votre POM

Dépendance FastExcel Maven

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

Vous pouvez également télécharger la bibliothèque partagée compilée à partir du référentiel GitHub et l'installer.

Générer un fichier Excel XLSX via l'API Java

La bibliothèque open source FastExcel permet aux développeurs de logiciels de générer un fichier Excel XLSX avec seulement quelques lignes de code Java. Il est très facile d'ajouter un nouveau classeur et d'ajouter différentes feuilles de calcul, d'insérer des cellules et des lignes dans la feuille de calcul. La bibliothèque prend en charge plusieurs fonctionnalités liées au formatage et au style du texte, telles que la modification du style de cellule, la définition du style sur une plage de cellules, l'ombrage des lignes alternées, la définition de la taille du papier et de l'orientation de la page, etc.

Créer un nouveau fichier Excel via la bibliothèque Java

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

Lire le fichier Excel XLSX via l'API Java

La bibliothèque FastExcel a fourni un lecteur très puissant qui permet aux utilisateurs d'ouvrir et de lire facilement un classeur Excel. C'est une alternative de streaming d'Apache POI mais très simple à gérer par rapport à Apache POI et 10 fois plus rapide que lui. Il ne peut lire que le contenu des cellules et ignore les styles, les graphiques et bien d'autres choses. L'exemple suivant montre comment ouvrir un classeur et lire toutes les lignes en continu à l'aide de Java.

Ouvrir et lire des lignes de classeur en streaming via 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);
        });
    }
} 

Génération de feuilles de calcul multithread via FastExcel`

Le multithreading est la capacité d'une unité centrale de traitement (CPU) à fournir simultanément plusieurs threads d'exécution, pris en charge par le système d'exploitation. Si l'ordinateur possède plusieurs processeurs ou cœurs de processeur, le système d'exploitation se charge d'allouer les threads aux processeurs de la manière la plus efficace. La bibliothèque open source FastExcel prend entièrement en charge la génération multithread et crée chaque feuille de calcul avec un thread différent à l'aide de code Java.

Générer des feuilles de calcul dans un environnement multithread via l'API Java

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