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

Aspose.Cells FOSS for Java

Libreria open-source Java 17 per creare, caricare, modificare e salvare cartelle di lavoro Excel .xlsx.

Aspose.Cells FOSS Open Source Java Spreadsheet Library (Bibliografia di fogli di calcolo)

Aspose.Cells FOSS per Java è una libreria pura-Java 17 che consente agli sviluppatori di creare, caricare, modificare e salvare cartelle di lavoro Excel .xlsx senza alcun runtime Aspose commerciale Il programma è stato creato per la prima volta nel corso del 2010 e viene utilizzato da un team di esperti. è rilasciato sotto la licenza MIT.

La libreria copre il modello di oggetto principale del foglio di calcolo: cartelle, fogli di lavoro, celle, Le funzionalità supportate includono valori di cella (stringa, numero, Boolean, data/ora e formula), formattazione delle celle (fonti, bordi, riempimenti, allineamento, e formati numerici), AutoFilter, convalida dei dati, formattazione condizionale, collegamenti ipertestuali, Celle fusi, nomi definiti, configurazione delle pagine e protezione dei fogli di lavoro. Aspose.Cells FOSS per Java è costruito con Maven 3.9 + e mira a Java 17+. Aggiungilo a Il salvataggio è attualmente limitato al formato .xlsx. Per funzionalità più avanzate, si rimanda a Aspose.Cells commercial edition.

Gestione di fogli e libri di lavoro

  • Creare nuove cartelle di lavoro con new Workbook() utilizzando il modello prova-con-risorse
  • Accesso ai fogli di lavoro tramite getWorksheets().get(index) o per nome
  • Rinnominare fogli di lavoro con setName(), aggiungere e rimuovere foglie, impostare il foglio attivo
  • Controllare la visibilità del foglio di lavoro e il colore delle schede tramite WorksheetViewModel

Chi usa questa funzione?

  • Generare librette di lavoro dei report nelle applicazioni Java sul lato server
  • Automatizzare la creazione di documenti Excel a più fogli in pipeline batch
  • Progettazione di flussi di lavoro per la generazione dei fogli di calcolo basati su modelli
  • Dividere o unire librette di lavoro programmaticamente senza Excel installato

Valori e formule delle celle

  • Imposta i valori delle celle con cell.putValue() per String, int, double, boolean e LocalDateTime
  • Leggi il tipo di valore tramite CellValueType: STRING, NUMBER, BOOLEAN, DATE_TIME o FORMULA
  • Memorizza le stringhe di formula con cell.setFormula(); il tipo di valore diventa FORMULA
  • Accedi a una rappresentazione stringa di qualsiasi valore di cella tramite cell.getStringValue()

Chi usa questa funzione?

  • Compilazione di tabelle dati e modelli finanziari in fogli di calcolo generati da server
  • Scrivere campi calcolati che Excel rivaluterà in aperto
  • Leggere e convertire i dati delle cellule per l’elaborazione successiva
  • Creazione di esportazioni di dati da dominio Java

Formattazione e stili delle celle

  • Applica caratteri, bordi e riempimenti tramite la classe Style da cell.getStyle()
  • Controlla l’allineamento tramite HorizontalAlignment (LEFT, CENTER, RIGHT) e AlignmentValue
  • Imposta i formati numerici usando style.setCustom() o i modelli integrati NumberFormat
  • Regola l’altezza delle righe e la larghezza delle colonne con getRows().get(n).setHeight() e getColumns().get(n).setWidth()

Chi usa questa funzione?

  • Produzione di rapporti formatti professionalmente senza Excel sul server
  • Sottolineare i dati con caratteri grassetti e formati personalizzati di numeri
  • Assicurare che le larghezze delle colonne corrispondano ai dati esportati senza regolazione manuale
  • Applicazione di stili di branding coerenti su tutti i fogli generati

Autofiltro, convalida e formattazione condizionale

  • Impostare un intervallo di AutoFilter con ws.getAutoFilter().setRange()
  • Aggiungere colonne di filtro e criteri personalizzati per il filtraggio tramite FilterColumn e AutoFilterCustomFilter
  • Definire le regole di convalida dei dati usando ValidationType e OperatorType con sheet.getValidations().add()
  • Applicare la formattazione condizionale tramite FormatConditionCollection e FormatCondition

Chi usa questa funzione?

  • Creazione di tabelle interattive dei dati in cui gli utenti finali applicano filtri in Excel
  • Applicazione di vincoli numerici o basati su elenchi per l’input nei fogli di calcolo condivisi
  • Sottolineare automaticamente i valori fuori dal range con regole condizionali di colore
  • Generare fogli di lavoro pronti per l’audit con regole visibili sulla qualità dei dati

Configurazione della pagina e protezione dei fogli di lavoro

  • Configurare le impostazioni di stampa con PageSetup: dimensione della carta, orientamento, adattamento alla pagina, area di impressione
  • Toggle linee di griglia e titoli per la stampa tramite PrintOptionsModel
  • Proteggere i fogli di lavoro e le autorizzazioni per l’adeguamento fine usando WorksheetProtectionModel
  • Salvare i collegamenti ipertestuali nei fogli di lavoro tramite Hyperlink e HyperlinkCollection

Chi usa questa funzione?

  • Generazione di fatture e rapporti pronti per la stampa da servizi back-end Java
  • Bloccare le celle della formula consentendo l’inserimento di dati in intervalli non protetti
  • Imbitimento dei collegamenti di navigazione tra le schede nelle cartelle di lavoro generate
  • Creazione di output standardizzati che stampano correttamente senza impostazioni manuali delle pagine

Crea un foglio, scrivi i valori e riserva

Creare una cartella di lavoro, impostare valori e stili delle celle, regolare le dimensioni della riga e della colonna e salvare in un file .xlsx utilizzando 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()) ```java
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");
        }
    }
}
}

}

Caricare un foglio di lavoro con diagnosi

Caricare un file .xlsx esistente utilizzando LoadOptions per abilitare la modalità di riparazione, quindi ispezionare le diagnosi del carico prima di salvare il foglio di lavoro modificato.

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

Validazione dei dati e formattazione condizionale

Aggiungere una regola di convalida a numeri interi e evidenziare le celle che si qualificano in forma condizionale grassetta in un’unica cartella di lavoro.

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

}

  

Risorse di Supporto e Apprendimento

 Italiano