Inleiding
Aspose.Cells FOSS for Java biedt een uitgebreide reeks spreadsheet‑mogelijkheden voor Java 17‑toepassingen. Uitgebracht onder de MIT‑licentie en gedistribueerd als een standaard Maven‑artifact, dekt de bibliotheek alles van basiswerkboekcreatie tot getypte celwaarden, rijke opmaak, gegevensvalidatie en AutoFilter — allemaal zonder een Microsoft Office‑afhankelijkheid.
Deze post loopt door de belangrijkste functiegebieden met gerichte codevoorbeelden die zijn gehaald uit
het geverifieerde API-oppervlak. Alle klasse- en methodenamen die hieronder worden getoond, bestaan in de bibliotheek
en zijn beschikbaar in versie 1.0.0.
Belangrijkste kenmerken
Werkmap- en werkbladbeheer
De Workbook klasse implementeert AutoCloseable zodat deze naadloos integreert met de
Java try-with-resources‑patroon. U kunt een lege werkmap maken, een bestaand.xlsx‑bestand laden, werkbladen hernoemen, bladen toevoegen of verwijderen, het actieve blad instellen, en
de tabblad‑zichtbaarheid beheren.
import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;
try (Workbook workbook = new Workbook()) {
Worksheet sheet = workbook.getWorksheets().get(0);
sheet.setName("Q1 Report");
workbook.getWorksheets().addSheet("Summary");
workbook.save("report.xlsx");
}
Getypte celwaarden en formules
De Cell-klasse accepteert getypte waarden via putValue() voor String, int, double,
boolean en LocalDateTime. De getType()-methode retourneert een CellValueType-enumwaarde — STRING, NUMBER, BOOLEAN, DATE_TIME of FORMULA — waardoor het eenvoudig is om op het waardetype te vertakken zonder strings te parseren. Formule‑strings worden opgeslagen met setFormula() en zullen bij het openen door Excel opnieuw worden berekend.
import com.aspose.cells_foss.Cell;
import com.aspose.cells_foss.CellValueType;
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(42500.00);
Cell c1 = sheet.getCells().get("C1");
c1.setFormula("=B1*1.2");
// Check type
assert b1.getType() == CellValueType.NUMBER;
assert c1.getType() == CellValueType.FORMULA;
workbook.save("values.xlsx");
}
Celopmaak en stijlen
Opmaak wordt toegepast via het Style-object dat wordt opgehaald uit cell.getStyle() en teruggeschreven met cell.setStyle(). Het Font-subobject maakt setBold() en setColor() beschikbaar. HorizontalAlignment regelt de tekstuitlijning — LEFT, CENTER of RIGHT. Aangepaste getalformaten gebruiken Excel‑opmaakstrings via style.setCustom(). Rijhoogte en kolombreedte worden aangepast via getRows().get(n).setHeight() en getColumns().get(n).setWidth().
import com.aspose.cells_foss.Cell;
import com.aspose.cells_foss.Style;
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.50);
Style style = cell.getStyle();
style.getFont().setBold(true);
style.setCustom("#,##0.00");
cell.setStyle(style);
sheet.getCells().getRows().get(0).setHeight(24.0);
sheet.getCells().getColumns().get(1).setWidth(16.0);
workbook.save("styled.xlsx");
}
Gegevensvalidatie
Gegevensvalidatieregels worden toegevoegd via sheet.getValidations().add(). ElkValidation-object neemt een ValidationType (bijv. WHOLE_NUMBER, DECIMAL, LIST)
en een OperatorType (bijv. BETWEEN, GREATER_THAN). Formulegrenzen worden opgeslagen als
strings via setFormula1() en setFormula2().
import com.aspose.cells_foss.CellArea;
import com.aspose.cells_foss.OperatorType;
import com.aspose.cells_foss.Validation;
import com.aspose.cells_foss.ValidationType;
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
AutoFilters stellen eindgebruikers in staat om interactief gegevens in Excel te filteren zonder extra
configuratie. Roep ws.getAutoFilter().setRange() aan met een bereik in A1-notatie om
de filterkoprij in te schakelen. Extra filterkolommen en aangepaste criteria kunnen
worden gedefinieerd via FilterColumn en AutoFilterCustomFilter.
import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;
try (Workbook workbook = new Workbook()) {
Worksheet sheet = workbook.getWorksheets().get(0);
sheet.getCells().get("A1").putValue("Product");
sheet.getCells().get("B1").putValue("Qty");
sheet.getAutoFilter().setRange("A1:B1");
workbook.save("filtered.xlsx");
}
Pagina‑instelling en werkbladbeveiliging
De PageSetup klasse regelt papierformaat, paginarichting en instellingen voor aanpassen aan pagina voor afdrukklare output. Werkbladbeveiliging wordt toegepast via protect() met een WorksheetProtectionModel, waardoor specifieke cellen bewerkbaar blijven terwijl de rest wordt vergrendeld. Hyperlinks worden beheerd via HyperlinkCollection.
Snelle start
Voeg de afhankelijkheid toe aan uw pom.xml:
<dependency>
<groupId>com.aspose</groupId>
<artifactId>cells-foss</artifactId>
<version>1.0.0</version>
</dependency>
Maak een werkmap met alle belangrijke functies in minder dan 20 regels:
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("Sales");
sheet.getCells().get("A1").putValue("Revenue");
Cell b1 = sheet.getCells().get("B1");
b1.putValue(42500.00);
Style style = b1.getStyle();
style.getFont().setBold(true);
style.setCustom("#,##0.00");
b1.setStyle(style);
sheet.getAutoFilter().setRange("A1:B1");
workbook.save("sales.xlsx");
}
}
}
Ondersteunde formaten
| Formaat | Extensie | Lezen | Schrijven |
|---|---|---|---|
| Excel Open XML | .xlsx | ✓ | ✓ |
Opslaan is momenteel beperkt tot .xlsx. De bibliotheek slaat formules op en round‑trips ze, maar functioneert niet als een volledige spreadsheet‑rekenmachine.
Open Source & Licenties
Aspose.Cells FOSS for Java is uitgebracht onder de MIT-licentie. U bent vrij om het te gebruiken, wijzigen, en te distribueren in persoonlijke, open‑source en commerciële projecten zonder beperkingen. De broncode is beschikbaar op github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Java.