Introducció

Aspose.Cells FOSS for Java és una biblioteca Java 17 de codi obert que permet als desenvolupadors crear, carregar, modificar i desar llibres de treball d’Excel .xlsx completament a la JVM — sense instal·lació de Microsoft Office, sense biblioteques natives i sense dependència comercial del temps d’execució d’Aspose. L’API pública viu sota el paquet com.aspose.cells_foss i es publica sota la llicència MIT, fent-la adequada per a projectes personals, de codi obert i comercials.

La biblioteca es distribueix com un artefacte Maven estàndard i cobreix el model d’objecte de fulls de càlcul OOXML central: llibres de treball, fulls de treball, cel·les, estils i col·leccions. Es construeix amb Maven 3.9+ i té com a objectiu Java 17+, integrant‑se de manera natural en qualsevol pipeline de construcció Java modern.

Afegeix la dependència al teu pom.xml i estaràs preparat per generar o processar Excel llibrets de treball des d’un servlet, una tasca per lots, una funció Lambda o qualsevol altre context del costat del servidor Java context.


Característiques clau

Gestió de llibres de treball i fulls de càlcul

La classe Workbook és el punt d’entrada per a totes les operacions de fulls de càlcul. Implementa
AutoCloseable de manera que s’integra netament amb el patró try-with-resources. Podeu
crear nous llibres de treball, carregar fitxers .xlsx existents, afegir i eliminar fulls de treball, canviar el nom dels fulls amb setName(),
establir el full actiu i controlar la visibilitat de les pestanyes.

import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;
import com.aspose.cells_foss.WorksheetCollection;

try (Workbook workbook = new Workbook()) {
    WorksheetCollection sheets = workbook.getWorksheets();
    Worksheet sheet = sheets.get(0);
    sheet.setName("Sales");
    workbook.save("sales.xlsx");
}

Valors de cel·la i fórmules

La classe Cell admet l’emmagatzematge de valors tipats mitjançant putValue() per a cadenes, enters, dobles, booleans i valors LocalDateTime. Les cadenes de fórmula s’emmagatzemen amb setFormula() i seran recalculades per Excel en obrir. El tipus de valor es mostra a través de CellValueTypeSTRING, NUMBER, BOOLEAN, DATE_TIME o FORMULA.

import com.aspose.cells_foss.Cell;
import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;

try (Workbook workbook = new Workbook()) {
    Worksheet sheet = workbook.getWorksheets().get(0);
    Cell a1 = sheet.getCells().get("A1");
    a1.putValue("Revenue");
    Cell b1 = sheet.getCells().get("B1");
    b1.putValue(12500.75);
    Cell c1 = sheet.getCells().get("C1");
    c1.setFormula("=B1*1.2");
    workbook.save("values.xlsx");
}

Formatació de cel·les i estils

El format s’aplica a través de la classe Style, recuperada de cell.getStyle() i escrita de nou amb cell.setStyle(). Podeu configurar negreta i color a la Font, aplicar HorizontalAlignment i establir cadenes de format numèric personalitzades mitjançant style.setCustom(). L’alçada de fila i l’amplada de columna es controlen a través de getRows().get(n).setHeight() i getColumns().get(n).setWidth().

import com.aspose.cells_foss.Style;
import com.aspose.cells_foss.Cell;
import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;

try (Workbook workbook = new Workbook()) {
    Worksheet sheet = workbook.getWorksheets().get(0);
    Cell cell = sheet.getCells().get("B1");
    cell.putValue(9999.5);
    Style style = cell.getStyle();
    style.getFont().setBold(true);
    style.setCustom("#,##0.00");
    cell.setStyle(style);
    workbook.save("styled.xlsx");
}

Validació de dades i format condicional

Les regles de validació de dades s’afegeixen a través de sheet.getValidations().add(). Cada objecte Validation conté un ValidationType (p. ex., WHOLE_NUMBER), un OperatorType (p. ex., BETWEEN) i cadenes de fórmula per als límits. El format condicional s’afegeix a través de sheet.getConditionalFormattings().add(), que retorna un FormatConditionCollection on especifiqueu els intervals de cel·les i les condicions.

import com.aspose.cells_foss.CellArea;
import com.aspose.cells_foss.Validation;
import com.aspose.cells_foss.ValidationType;
import com.aspose.cells_foss.OperatorType;
import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;

try (Workbook workbook = new Workbook()) {
    Worksheet sheet = workbook.getWorksheets().get(0);
    int vi = sheet.getValidations().add(new CellArea(1, 0, 10, 0));
    Validation validation = sheet.getValidations().get(vi);
    validation.setType(ValidationType.WHOLE_NUMBER);
    validation.setOperator(OperatorType.BETWEEN);
    validation.setFormula1("1");
    validation.setFormula2("100");
    workbook.save("validated.xlsx");
}

AutoFiltres i Configuració de pàgina

Els AutoFilters es configuren cridant ws.getAutoFilter().setRange() amb una cadena d’interval en notació A1. L’objecte PageSetup controla la mida del paper, l’orientació i els ajustaments d’adaptació a la pàgina per a una sortida preparada per imprimir. La protecció del full de càlcul s’aplica mitjançant protect() amb un WorksheetProtectionModel.


Inici ràpid

Afegeix la dependència Maven al teu pom.xml:

<dependency>
  <groupId>com.aspose</groupId>
  <artifactId>cells-foss</artifactId>
  <version>1.0.0</version>
</dependency>

Creeu un llibre de treball, ompliu cel·les, apliqueu format i deseu:

import com.aspose.cells_foss.Cell;
import com.aspose.cells_foss.Style;
import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;

public class QuickStart {
    public static void main(String[] args) {
        try (Workbook workbook = new Workbook()) {
            Worksheet sheet = workbook.getWorksheets().get(0);
            sheet.setName("Report");

            sheet.getCells().get("A1").putValue("Revenue");
            Cell cell = sheet.getCells().get("B1");
            cell.putValue(12500.75);

            Style style = cell.getStyle();
            style.getFont().setBold(true);
            style.setCustom("#,##0.00");
            cell.setStyle(style);

            sheet.getCells().getRows().get(0).setHeight(22.0);
            sheet.getCells().getColumns().get(1).setWidth(14.5);

            workbook.save("report.xlsx");
        }
    }
}

Formats compatibles

FormatExtensióLecturaEscriptura
Excel Open XML.xlsx

Actualment, l’estalvi està limitat a .xlsx. La biblioteca emmagatzema i transmet fórmules, però no és un motor complet de càlcul de fulls de càlcul.


Codi obert i llicències

Aspose.Cells FOSS per a Java es publica sota la llicència MIT. Ets lliure d’utilitzar‑lo, modificar‑lo i distribuir‑lo en projectes personals, de codi obert i comercials sense restriccions. El codi font està disponible a github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Java.


Començar