FOSS per Java és una biblioteca pura de Java 17 que permet als desenvolupadors crear, Carregar, modificar i guardar quadres de treball .xlsx d’Excel sense cap temps d ’execució comercial Aspose Exposar una API pública neta sota el paquet com.aspose.cells_foss i és alliberat sota la llicència MIT.
La biblioteca cobreix el model d’objecte de la taula: quadres, fulles de treball, cèl·lules. Les capacitats suportades inclouen valors de cèl·lula (cadença, número, nombre) i col·leccions. Boolean, data/hora i fórmula), formatatge de cèl·lules (fontes, borderes, ompliment, alineament, i formats de nombres), Autofiltres, validació de dades, formatatge condicional, hipervincles, cel·les fusionades, noms definits, configuració de pàgines i protecció de fitxes. FOSS per Java està construït amb Maven 3.9+ i apunta a Java 17+. El teu projecte a través d’una dependència Maven. L’enregistrament està limitat al format .xlsx. Per a funcionalitats més avançades, es pot consultar la Aspose.Cells commercial edition.
new Workbook() utilitzant el patró de prova-amb-recursosgetWorksheets().get(index) o per nomsetName(), afegir i eliminar fletes, establir la pàgina activaWorksheetViewModelcell.putValue() per a String, int, double, boolean i LocalDateTimeCellValueType: STRING, NUMBER, BOOLEAN, DATE_TIME o FORMULAcell.setFormula(); el tipus de valor es converteix en FORMULAcell.getStringValue()Style de cell.getStyle()HorizontalAlignment (LEFT, CENTER, RIGHT) i AlignmentValuestyle.setCustom() o patrons NumberFormat integratsgetRows().get(n).setHeight() i getColumns().get(n).setWidth()ws.getAutoFilter().setRange()FilterColumn i AutoFilterCustomFilterValidationType i OperatorType ambsheet.getValidations().add()FormatConditionCollection i FormatConditionPageSetup: mida del paper, orientació, encaix a pàgina, àrea d ‘impresiónPrintOptionsModelWorksheetProtectionModelHyperlink i HyperlinkCollectionCrear un llibre de treball, establir valors i estils de cèl·lula, ajustar les dimensions de la fila i columna, i guardar en 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()) ```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");
}
}
}
}
}
Carregar un fitxer .xlsx existent utilitzant LoadOptions per activar el mode de reparació, després inspeccionar els diagnòstics de càrrega abans d’estalviar la llibreta modificada.
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");
}
}
}
Afegir una regla de validació d’un nombre sencer i destacar les cèl·lules que es qualifiquen amb formatatge condicional en negrit en un únic llibre.
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");
}
}
}
}
}