Aspose.Cells FOSS pour Java est une bibliothèque pure de Java 17 qui permet aux développeurs de créer, télécharger, modifier et enregistrer les livres de travail Excel .xlsx sans aucun temps d’exploitation commercial Aspose dépendance. il expose une API publique propre sous le pack com.aspose.cells_foss et Il est libéré sous la licence MIT.
La bibliothèque couvre le modèle d’objet de la feuille de diffusion centrale: ouvrages, feuilles de travail, cellules, les styles et collections. Les capacités soutenues comprennent des valeurs cellulaires (string, nombre, boolean, date/heure et formule), formatage cellulaire (fonte, frontières, remplissages, alignement, et les formats numériques), AutoFilters, validation des données, formatage conditionnel, hyperliens, cellules fusionnées, noms définis, paramètres de page et protection des feuilles de travail.
Aspose.Cells FOSS pour Java est construit avec Maven 3.9+ et cible Java 17+. votre projet via une seule dépendance Maven. Pour plus de fonctionnalités avancées, consultez le Aspose.Cells commercial edition. L’épargne est actuellement limitée au format .xlsx.
Créez un livre de travail, définissez les valeurs et les styles cellulaires, ajuster la ligne et la dimension des colonnes et sauvegardez-le dans un fichier .xlsx en utilisant 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");
}
}
}
Carcasser un fichier .xlsx existant en utilisant LoadOptions pour activer le mode de réparation, puis vérifier les diagnostics de charge avant d’économiser le librairie modifiée.
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");
}
}
}
Ajoutez une règle de validation numérique entière et soulignez les cellules qualifiantes avec le formatage conditionnel audacieux dans un seul livre de travail.
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");
}
}
}