Aspose.Cells FOSS per a Java és una biblioteca de Java 17 pura que permet als desenvolupadors crear, carregar, modificar i salvar els llibres de treball Excel .xlsx sense cap temps comercial d’Aspose Exposa una API pública neta sota el paquet com.aspose.cells_foss i Es publica sota la llicència MIT.
La biblioteca cobreix el model de l’objecte del quadre central: llibres, taules, cèl·lules. Estils, i col·leccions. Les capacitats que es donen suport inclouen valors de cèl·lules (string, nombre, boolean, data/hora i fórmula), formatació de cèl·lules (fonts, fronteres, ompliments, alineament, i formats de nombre), AutoFilters, validació de dades, formatatge condicional, hyperlinks, cèl·lules fusionades, noms definits, configuració de pàgina i protecció del full de treball.
Aspose.Cells FOSS per a Java està construït amb Maven 3.9+ i objectius de Java 17+. El teu projecte a través d’una dependència de Maven. Per a més funcionalitat avançada, es refereix al Aspose.Cells commercial edition. L’estalvi actualment està limitat al format .xlsx.
Crea un llibre de treball, configura els valors i estils de cèl·lules, ajusta les dimensions de la línia i columna i salva a un arxiu .xlsx utilitzant 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");
}
}
}
Carregar un fitxer .xlsx existent utilitzant LoadOptions per habilitar el mode de reparació, després inspeccionar els diagnòstics de càrrega abans d’esconder el llibre de treball modificat.
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");
}
}
}
Afegeix una regla de validació total i destaca les cèl·lules qualificades amb el formatament condicional valent en un sol llibre de treball.
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");
}
}
}