Aspose.Cells FOSS for Java ir tīra-Java 17 bibliotēka, kas ļauj izstrādātājiem izveidot, ielādēt, modificēt un saglabāt Excel .xlsx darba grāmatas bez jebkāda komerciāla Aspose izpildlaika atkarība. Tas nodrošina tīru publisku API zem com.aspose.cells_foss pakotnes un ir izlaists zem MIT licences.
Bibliotēka aptver galveno izklājlapu objektu modeli: darba grāmatas, darba lapas, šūnas, stili, un kolekcijas. Atbalstītās iespējas ietver šūnu vērtības (virkne, skaitlis, boolean, datums/laiks, un formula), šūnas formatēšana (fonti, robežas, aizpildījumi, izlīdzināšana, un skaitļu formāti), AutoFilters, datu validācija, nosacītā formatēšana, hipersaites, apvienotas šūnas, definēti nosaukumi, lapas iestatījumi un darblapas aizsardzība
Aspose.Cells FOSS priekš Java ir izveidots ar Maven 3.9+ un mērķē uz Java 17+. Pievienojiet to jūsu projektam caur vienu Maven atkarību. Lai iegūtu papildu funkcionalitāti, skatieties Aspose.Cells commercial edition. Saglabāšana pašlaik ir ierobežota uz .xlsx formātu.
Izveidojiet darblapu, iestatiet šūnu vērtības un stilus, pielāgojiet rindu un kolonnas dimensijas, un saglabājiet .xlsx failā, izmantojot 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");
}
}
}
Ielādējiet esošu .xlsx failu, izmantojot LoadOptions, lai aktivizētu labošanas režīmu, pēc tam pārbaudiet ielādes diagnostiku pirms modificētā darba grāmatas saglabāšanas.
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");
}
}
}
Pievienojiet veselu skaitļu validācijas noteikumu un izceliet atbilstošās šūnas ar treknu nosacījuma formatēšanu vienā darba grāmatā.
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");
}
}
}