Увод

Aspose.Cells FOSS for Java je open-source Java 17 biblioteka koja omogućava programerima
da kreiraju, učitavaju, modifikuju i čuvaju Excel .xlsx radne sveske u potpunosti na JVM — bez
instalacije Microsoft Office‑a, bez nativnih biblioteka i bez komercijalne Aspose runtime
zavisnosti. Javni API se nalazi u com.aspose.cells_foss paketu i
objavljen je pod MIT licencom, što ga čini pogodnim za lične, open-source i
komercijalne projekte podjednako.

Biblioteka se isporučuje kao standardni Maven artefakt i pokriva osnovni OOXML model objekata proračunskih tabela: radne sveske, radne listove, ćelije, stilove i kolekcije. Izgrađena je uz Maven 3.9+ i cilja Java 17+, prirodno se integrišući u bilo koji moderan Java build pipeline.

Dodajte zavisnost u svoj pom.xml i spremni ste da generišete ili obrađujete Excel radne sveske iz servlet‑a, batch posla, Lambda funkcije ili bilo kog drugog Java server‑side konteksta.


Ključne karakteristike

Управљање радном книгом и радним листом

Klasa Workbook je ulazna tačka za sve operacije sa tabelama. Implementira
AutoCloseable, tako da se čisto integriše sa obrascem try-with-resources. Možete
kreirati nove radne sveske, učitati postojeće .xlsx fajlove, dodavati i uklanjati radne listove, preimenovati
listove pomoću setName(), postaviti aktivni list i kontrolisati vidljivost kartica.

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

Vrednosti ćelija i formule

Klasa Cell podržava skladištenje tipizovanih vrednosti putem putValue() za stringove, cele brojeve, double‑ove, logičke vrednosti i LocalDateTime vrednosti. Formula stringovi se čuvaju pomoću setFormula() i biće ponovo izračunati od strane Excela prilikom otvaranja. Tip vrednosti je izložen preko CellValueTypeSTRING, NUMBER, BOOLEAN, DATE_TIME ili 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");
}

Форматирање ћелија и стилови

Formatiranje se primenjuje kroz klasu Style, preuzima se iz cell.getStyle() i zapisuje nazad pomoću cell.setStyle(). Možete konfigurisati podebljano i boju na Font, primeniti HorizontalAlignment i postaviti prilagođene stringove formata broja putem style.setCustom(). Visina reda i širina kolone se kontrolišu kroz 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");
}

Validacija podataka i uslovno formatiranje

Pravila za proveru podataka se dodaju putem sheet.getValidations().add(). Svaki Validation objekat sadrži ValidationType (npr., WHOLE_NUMBER), OperatorType (npr., BETWEEN) i formule za granice. Uslovno formatiranje se dodaje putem sheet.getConditionalFormattings().add(), koji vraća FormatConditionCollection gde specificirate opsege ćelija i uslove.

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

Аутоматски филтери и подешавање странице

AutoFilters su konfigurisani pozivanjem ws.getAutoFilter().setRange() sa A1‑notacijom
stringom opsega. Objekat PageSetup kontroliše veličinu papira, orijentaciju i prilagođavanje stranici
podešavanja za izlaz spreman za štampu. Zaštita radnog lista se primenjuje putem protect() uz
WorksheetProtectionModel.


Brzi početak

Dodajte Maven zavisnost u svoj pom.xml:

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

Kreirajte radnu svesku, popunite ćelije, primenite formatiranje i sačuvajte:

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

Podržani formati

FormatEkstenzijaČitanjePisanje
Excel Open XML.xlsx

Čuvanje je trenutno ograničeno na .xlsx. Biblioteka čuva i prenosi formule, ali nije potpuni motor za izračunavanje tabela.


Open Source i licenciranje

Aspose.Cells FOSS for Java je objavljen pod MIT licencom.
Možete ga slobodno koristiti,
menjati i distribuirati ga u ličnim, open‑source i komercijalnim projektima bez
ograničenja.
Izvorni kod je dostupan na
github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Java.


Početak