Aspose.Cells FOSS for Java là một thư viện Java 17 tinh khiết cho phép các nhà phát triển tạo, tải, sửa đổi, và lưu Excel .xlsx sổ làm việc mà không có bất kỳ thời gian làm việc thương mại Aspose Nó tiết lộ một API công cộng sạch sẽ dưới gói com.aspose.cells_foss và được phát hành theo giấy phép MIT.
Thư viện bao gồm mô hình đối tượng bảng phân phối cốt lõi: sổ làm việc, bảng làm việc, tế bào, Các tính năng được hỗ trợ bao gồm các giá trị tế bào (thung, số, boolean, ngày/giờ, và công thức), định dạng tế bào (những nguồn, biên giới, lấp đầy, phù hợp, và định dạng số), AutoFilters, xác thực dữ liệu, định dạng điều kiện, hyperlinks, Các ô kết hợp, tên xác định, thiết lập trang và bảo vệ bảng tính.
Aspose.Cells FOSS for Java được xây dựng với Maven 3.9+ và mục tiêu Java 17+. dự án của bạn thông qua một Maven phụ thuộc duy nhất. để có chức năng nâng cao hơn, hãy tham khảo Aspose.Cells commercial edition. tiết kiệm hiện đang giới hạn trong định dạng .xlsx.
Tạo sổ làm việc, đặt giá trị và phong cách ô, điều chỉnh chiều cao hàng và cột, và lưu vào tệp .xlsx bằng cách sử dụng 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");
}
}
}
Tải một tệp .xlsx hiện có bằng cách sử dụng LoadOptions để bật chế độ sửa chữa, sau đó kiểm tra chẩn đoán tải trước khi tiết kiệm sổ làm việc được sửa đổi.
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");
}
}
}
Thêm một quy tắc xác thực toàn số và nhấn mạnh các tế bào đủ điều kiện với định dạng điều kiện dũng cảm trong một sổ làm việc duy nhất.
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");
}
}
}