Introduktion

Aspose.Cells FOSS för Java är ett open-source Java 17-bibliotek som möjliggör för utvecklare
att skapa, läsa in, ändra och spara Excel .xlsx arbetsböcker helt på JVM — med
ingen Microsoft Office-installation, inga inhemska bibliotek och ingen kommersiell Aspose runtime‑beroende.
Det offentliga API:et finns under com.aspose.cells_foss paketet och är
släppt under MIT-licensen, vilket gör det lämpligt för personliga, open-source och
kommersiella projekt lika.

Biblioteket levereras som en standard Maven‑artefakt och täcker den centrala OOXML‑kalkylblad objektmodellen: arbetsböcker, kalkylblad, celler, stilar och samlingar. Det är byggt med Maven 3.9+ och riktar sig mot Java 17+, vilket integreras naturligt i alla moderna Java‑build pipeline.

Lägg till beroendet i din pom.xml så är du redo att generera eller bearbeta Excel‑arbetsböcker från en servlet, ett batch‑jobb, en Lambda‑funktion eller någon annan Java‑serversidig kontext.


Nyckelfunktioner

Arbetsbok och arbetsbladshantering

Klassen Workbook är ingångspunkten för alla kalkylbladsoperationer. Den implementerar
AutoCloseable så att den integreras smidigt med try-with-resources-mönstret. Du kan
skapa nya arbetsböcker, läsa in befintliga .xlsx‑filer, lägga till och ta bort arbetsblad, byta namn på
blad med setName(), ange det aktiva bladet och kontrollera flikens synlighet.

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

Cellvärden och formler

Cell‑klassen stöder typad värdelagring via putValue() för strängar, heltal, dubbelvärden, booleska värden och LocalDateTime‑värden. Formelsträngar lagras med setFormula() och kommer att beräknas om av Excel vid öppning. Värdetypen exponeras genom CellValueTypeSTRING, NUMBER, BOOLEAN, DATE_TIME eller 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");
}

Cellformatering och stilar

Formatering tillämpas via klassen Style, hämtas från cell.getStyle() och skrivs tillbaka med cell.setStyle(). Du kan konfigurera fetstil och färg på Font, tillämpa HorizontalAlignment och ange anpassade talformatsträngar via style.setCustom(). Radhöjd och kolumnbredd styrs genom getRows().get(n).setHeight() och 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");
}

Datavalidering och villkorsstyrd formatering

Datavalideringsregler läggs till via sheet.getValidations().add(). Varje Validation‑objekt innehåller en ValidationType (t.ex. WHOLE_NUMBER), en OperatorType (t.ex. BETWEEN) och formelsträngar för gränserna. Villkorsstyrd formatering läggs till via sheet.getConditionalFormattings().add(), vilket returnerar en FormatConditionCollection där du specificerar cellområden och villkor.

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

AutoFilter och Sidinställning

AutoFilter konfigureras genom att anropa ws.getAutoFilter().setRange() med en A1‑notation intervallsträng. PageSetup‑objektet styr pappersstorlek, orientering och anpassning‑till‑sida inställningarna för utskriftsklar output. Arbetsblads skydd tillämpas via protect() med en WorksheetProtectionModel.


Snabbstart

Lägg till Maven-beroendet i ditt pom.xml:

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

Skapa en arbetsbok, fyll i celler, tillämpa formatering och spara:

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

Stödda format

FormatFiländelseLäsSkriv
Excel Open XML.xlsx

Sparande är för närvarande begränsat till .xlsx. Biblioteket lagrar och vidarebefordrar formler, men det är inte en fullständig kalkylbladsberäkningsmotor.


Öppen källkod & licensiering

Aspose.Cells FOSS för Java är släppt under MIT-licensen. Du får fritt använda, modifiera och distribuera den i personliga, öppen källkod och kommersiella projekt utan restriktioner. Källkoden finns tillgänglig på github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Java.


Komma igång