Fuente abierta Java API para las hojas de cálculo de Microsoft Excel

Cree, lea, edite y convierta archivos de hoja de cálculo de Microsoft Excel en aplicaciones Java a través de la API de código abierto.

¿Qué es Fast Excel?

Trabajar con grandes archivos de Excel es siempre un gran desafío para los programadores de software y requiere habilidades y recursos de alto nivel para gestionarlos. FastExcel es una fuente abierta muy poderosa Java Excel biblioteca que permite a los desarrolladores de software crear y leer Microsoft Excel XLSX libros de cocina dentro de sus propias Java aplicaciones. Ayuda a los desarrolladores a trabajar con archivos de Excel grandes sin ninguna dependencia externa.

FastExcel es muy simple de usar y reducir la huella de memoria y el alto rendimiento acumulando solamente elementos necesarios. Ha incluido varias características importantes para trabajar con hojas de cálculo tales como crear libros de cocina simples, aplicar estilos y formatos a células, columnas y filas, establecer estilo en una gama de células, fusionar células y filas,

FastExcel proporciona soporte completo para la multitreading, lo que significa que cada hoja de trabajo en el libro de cocina puede ser generada por un hilo diferente, apoyando plenamente las cuerdas y estilos compartidos. El lector FastExcel es muy eficiente y sólo lee contenidos de células y estilos de descartes, gráficos y otras cosas.

Previous Next

Primeros pasos con FastExcel

La biblioteca FastExcel requiere Java 8. Construya con Haven. Por favor incluya la siguiente dependencia en su POM

FastExcel Dependencia de Haven

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

También puede descargar la biblioteca compartida compilada del repositorio de GitHub e instalarla.

Generar Excel XLSX Archivo a través de Java API

La fuente abierta FastExcel de la biblioteca permite a los desarrolladores de software generar Excel XLSX File con sólo un par de líneas de Java código. Es muy fácil añadir un nuevo libro de cocina y añadir diferentes hojas de trabajo, insertar células y filas dentro de la hoja de trabajo. La biblioteca soporta varias características relacionadas con el formato de texto y el estilo de célula de cambio, estilo de conjunto en una gama de células, filas alternas de sombra, tamaño de papel y orientación de página.

Crear Nuevo Archivo de Excel a través de Java Biblioteca

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

Lea Excel XLSX Archivo vía Java API

La FastExcel biblioteca ha proporcionado un lector muy potente que permite a los usuarios abrir y leer un libro de cocina de Excel con facilidad. Es una alternativa de streaming de Apache PO pero muy simple de manejar como comparación con Apache PO y 10 veces más rápido que él. Sólo puede leer el contenido celular y descartar estilos, gráficos, y muchas otras cosas. El siguiente ejemplo muestra cómo abrir un libro de cocina y leer todas las filas en una manera de streaming usando Java.

Lee Cookbook Ross en Streaming Way a través de 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);
        });
    }
} 

Generación de hojas de cálculo multitreaded a través de FastExcel

Multitreading es la capacidad de una unidad central de procesamiento (CPU) para proporcionar múltiples hilos de ejecución simultáneamente, apoyados por el sistema operativo. Si el ordenador tiene múltiples procesadores o núcleos de procesador, el sistema operativo se responsabiliza de la asignación de los hilos a los procesadores de la manera más eficiente. La fuente abierta FastExcel biblioteca apoya completamente la generación multitreaded y crea cada hoja de trabajo un hilo diferente utilizando Java códigos.

Generar hojas de cálculo en el medio ambiente multitreading a través de 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();
}
 Español