1. Produkter
  2.   Aspose.Cells
  3.   Aspose.Cells FOSS for Java

Aspose.Cells FOSS för Java

Open Source Java 17 bibliotek för att skapa, ladda upp, modifiera och spara Excel .xlsx arbetsböcker.

Aspose.Cells FOSS – Open Source Java Spreadsheet Library (Öppna källor)

Aspose.Cells FOSS för Java är en ren-Java 17 bibliotek som gör det möjligt för utvecklare att skapa, ladda, modifiera och spara Excel .xlsx arbetsböcker utan någon kommersiell Aspose-arbetstid Det exponerar en ren offentlig API under com.aspose.cells_foss-paketet och Den släpps under MIT-licensen.

Biblioteket täcker kärnan spreadsheet objektmodellen: arbetsböcker, worksheets, celler, Stilar och samlingar. stödda kapaciteter inkluderar cellvärden (sträng, antal, boolean, datum/tid och formel), cellformatering (fonter, gränser, fyllningar, anpassning, och nummerformat), AutoFilter, datavalidering, villkorlig formatering, hyperlänkar, blandade celler, definierade namn, sidinställning och arbetsblockskydd.

Aspose.Cells FOSS för Java är byggd med Maven 3.9+ och mål Java 17+. ditt projekt via en enda Maven beroende. för mer avancerad funktionalitet, hänvisar till Aspose.Cells commercial edition. Spara är för närvarande begränsad till .xlsx formatet.

Arbetsbok och arbetsbladshantering

  • Skapa nya arbetsböcker med en ny Workbook() med try-with-resources mönster
  • Tillgång till arbetsbladen via getWorksheets(.get(index) eller genom namn
  • Renamn arbetsbladen med setName(), lägga till och ta bort blader, ställa in det aktiva bladet
  • Kontrollera synlighet och flikfärg via WorksheetViewModel

Vem använder denna funktion

  • Generera rapporter arbetsböcker i Java-applikationer på server sida
  • Automatisera flerfält Excel-dokumentskapande i batchrör
  • Bygg template-baserade spreadsheet generationsarbetsflöden
  • Dela eller fusionera arbetsböcker programmatiskt utan att Excel installeras

Cellvärden och formler

  • Ställ in cellvärden med cell.putValue() för String, int, dubbel, boolean och LocalDateTime
  • Läs värdetypen via CellValueType: STRING, NUMBER, BOOLEAN, DATE_TIME eller FORMULA
  • Förvara formel strängar med cell.setFormula(); värde typen blir FORMULA
  • Tillgå en rad representation av något cellvärde via cell.getStringValue()

Vem använder denna funktion

  • Populera databeller och finansiella modeller i servergenererade spreadsheets
  • Skriv beräknade fält som Excel kommer att omvärdera vid öppnande
  • Läsning och omvandling av celler data för nedströmsbehandling
  • Bygg typade dataexporter från Java-domänobjekt

Cellformatering och stilar

  • Applicera teckensnitt, gränser och fyllningar via Style-klassen från cell.getStyle()
  • Kontrollallergering via HorisontalAlignment (LEFT, CENTER, RIGHT) och AlignmentValue
  • Ställ in siffrorformat med style.setCustom() eller inbyggda NumberFormat mönster
  • Anpassa radhöjd och kolumnbredd med getRows(.get(n).setHeight() och getColumns().get.(n)setWidth()

Vem använder denna funktion

  • Producera professionellt formatade rapporter utan Excel på servern
  • Uppmärksamma data med djärva tecken och anpassade siffror format
  • Säkerställ kolumnbredd passar exporterade data utan manuell justering
  • Applicera konsekventa brandingstilar över genererade arbetsblader

AutoFilter, Validering och villkorlig formatering

  • Ställ in ett AutoFilter-område med ws.getAutoFiltrar().setRange()
  • Lägg till filterkolumner och anpassade filt kriterium via FilterColumn och AutoFilterCustomFiler
  • Definiera datavalideringsregler med ValidationType och OperatorTyp med sheet.getValidations().add()
  • Applicera villkorlig formatering via FormatConditionCollection och FormatKonditions

Vem använder denna funktion

  • Bygg interaktiva databeller där slutanvändare tillämpar filter i Excel
  • Använda numeriska eller listbaserade inmatningsbegränsningar i delade skivor
  • Utmärkning av out-of-range värden automatiskt med villkorliga färgregler
  • Generera revisioner med synliga datakvalitetsregler

Sidan Setup och arbetsblockskydd

  • Konfigurera tryckinställningar med PageSetup: pappersstorlek, orientering, fit-to-page, tryckt område
  • Samla gridlinjer och rubriker för utskrift via PrintOptionsModel
  • Skydda arbetsblad och fin-tuna tillstånd med hjälp av WorksheetProtectionModell
  • Hämta hyperlänkar i arbetsbladen via Hyperlink och HyperLinkCollection

Vem använder denna funktion

  • Generera tryckta fakturor och rapporter från Java backend-tjänster
  • Lås formelceller samtidigt som data ingången i oförskjutna rader tillåts
  • Inbyggd navigationsförbindelser mellan blad i genererade arbetsböcker
  • Skapa standardiserad utgång som skriver korrekt utan manuell sidainställning

Skapa en arbetsbok, Skriv värden och spara

Skapa en arbetsbok, ställa in cellvärden och stilar, justera rad- och kolumnen dimensioner och spara till en .xlsx fil med Workbook.save().

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 Main {
    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");
            sheet.getCells().get("B1").putValue(12500.75);
            Cell total = sheet.getCells().get("B1");
            Style style = total.getStyle();
            style.getFont().setBold(true);
            style.setCustom("#,##0.00");
            total.setStyle(style);
            sheet.getCells().getRows().get(0).setHeight(22.0);
            sheet.getCells().getColumns().get(1).setWidth(14.5);
            workbook.save("report.xlsx");
        }
    }
}

Ladda upp en arbetsbok med diagnostik

Ladda upp en befintlig .xlsx-fil med LoadOptions för att aktivera reparationsläget, kontrollera sedan lastdiagnostik innan du sparar den modifierade arbetsboken.

import com.aspose.cells_foss.LoadIssue;
import com.aspose.cells_foss.LoadOptions;
import com.aspose.cells_foss.Workbook;

public class LoadWorkbook {
    public static void main(String[] args) {
        LoadOptions options = new LoadOptions();
        options.setStrictMode(false);
        options.setTryRepairPackage(true);
        options.setTryRepairXml(true);
        try (Workbook workbook = new Workbook("input.xlsx", options)) {
            if (workbook.getLoadDiagnostics().hasRepairs()) {
                for (LoadIssue issue : workbook.getLoadDiagnostics().getIssues()) {
                    System.out.println(issue.getMessage());
                }
            }
            workbook.getDocumentProperties().setAuthor("cells-foss");
            workbook.save("output.xlsx");
        }
    }
}

Data Validering och villkorlig formatering

Lägg till en hel-numrer valideringsregel och lyfta fram kvalificerande celler med modig villkorlig formatering i en enda arbetsbok.

import com.aspose.cells_foss.CellArea;
import com.aspose.cells_foss.FormatCondition;
import com.aspose.cells_foss.FormatConditionCollection;
import com.aspose.cells_foss.FormatConditionType;
import com.aspose.cells_foss.OperatorType;
import com.aspose.cells_foss.Style;
import com.aspose.cells_foss.Validation;
import com.aspose.cells_foss.ValidationType;
import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;

public class RulesExample {
    public static void main(String[] args) {
        try (Workbook workbook = new Workbook()) {
            Worksheet sheet = workbook.getWorksheets().get(0);
            int vi = sheet.getValidations().add(new CellArea(1, 0, 10, 1));
            Validation validation = sheet.getValidations().get(vi);
            validation.setType(ValidationType.WHOLE_NUMBER);
            validation.setOperator(OperatorType.BETWEEN);
            validation.setFormula1("1");
            validation.setFormula2("100");
            int cfIndex = sheet.getConditionalFormattings().add();
            FormatConditionCollection conditions = sheet.getConditionalFormattings().get(cfIndex);
            conditions.addArea(CellArea.createCellArea("B2", "B11"));
            int condIndex = conditions.addCondition(
                FormatConditionType.CELL_VALUE, OperatorType.BETWEEN, "1", "100");
            FormatCondition condition = conditions.get(condIndex);
            Style style = condition.getStyle();
            style.getFont().setBold(true);
            condition.setStyle(style);
            workbook.save("rules.xlsx");
        }
    }
}
  

Stöd och Lärande Resurser

 Svenska