1. 产品
  2.   Aspose.Cells
  3.   Aspose.Cells FOSS for Java

Aspose.Cells FOSS - 点击:FOSS for Java

开源 Java 17 图书馆,用于创建、加载、修改和保存 Excel .xlsx 工作簿。

Aspose.Cells FOSS - 开源 Java Spreadsheet Library

Aspose.Cells FOSS for Java 是一個純粹的 Java 17 圖書館,讓開發人員創建、 加载、修改和保存 Excel .xlsx 工作簿,无需任何商业 Aspose 运行时间。 依赖性. 在 com.aspose.cells_foss 包下展示清洁的公共 API,并 它是根据MIT许可证发布的。

图书馆覆盖了核心分布表对象模型:工作簿、工作表、细胞、 支持的能力包括细胞值(线条、数字、 布莱恩,日期/时间和公式),细胞格式(源、边界、填充、调整、 和数字格式), AutoFilters,数据验证,条件格格,超链接, 合并细胞、定义名称、页面设置和工作表保护。

Aspose.Cells FOSS for Java 配备了 Maven 3.9+ 和 Java 17+ 的目标。 您的项目通过单一的Maven依赖性. 要获得更高功能,请参阅 Aspose.Cells commercial edition. 在目前的情况下,存储仅限于 .xlsx 格式。

工作簿与工作表管理

  • 使用 try-with-resources 模式创建新工作簿( )
  • 通过 getWorksheets(.get(index)或以名称访问工作表
  • 用 setName(),添加和删除表,设置活跃表
  • 通过 WorksheetViewModel 控制工作表可见性和选项卡颜色

谁使用这个功能

  • 创建服务器侧Java应用程序中的报告工作簿
  • 自动化多表 Excel 文档在包管中创建
  • 基于模板的分布式表创建工作流
  • 分解或编译工作簿,而无需 Excel 安装。

细胞值与公式

  • 设置单元值与 cell.putValue() 为 String、int、double、boolean 和 LocalDateTime
  • 通过 CellValueType 阅读值类型: STRING、NUMBER、BOOLEAN、DATE_TIME 或 FORMULA
  • 存储表单链与 cell.setFormula();值类型变成 FORMULA
  • 通过 cell.getStringValue() 访问任何细胞值的序列代表性( )

谁使用这个功能

  • 数据表和服务器发明的分布板中的财务模型
  • 写出 Excel 在开启时重新评估的计算字段
  • 阅读和转换细胞数据为下流处理
  • 建立从 Java 域名对象中输出的数据

细胞格式和风格

  • 通过 cell.getStyle() 的风格类应用字体、边界和填写字符( )
  • 控制通过水平调整(左、中心、右)和调整值的协调
  • 使用 style.setCustom() 或内置的 NumberFormat 模式设置数字格式
  • 按 getRows(.get(n) setHeight() 和 getColumns( .get (n).setWidth() 的序列高度和列宽调整。

谁使用这个功能

  • 在服务器上制作专业格式化报告,而无需Excel
  • 用勇敢的字体和自定义数字格式突出数据
  • 确保列宽符合未经手动调整的出口数据
  • 应用连续的品牌风格在生成的工作表中

自动过滤、验证和条件格式化

  • 设置一个 AutoFilter 范围,使用 ws.getAutoFillter().setRange()
  • 通过 FilterColumn 和 AutoFilterCustomFillter 添加过滤列和自定义过濾器标准
  • 使用 ValidationType 和 OperatorTyp 定义数据验证规则,并使用 sheet.getValidations().add()
  • 使用 FormatConditionCollection 和 FormatKonditions 进行条件格式化应用

谁使用这个功能

  • 创建互动数据表,在Excel中应用最终用户的过滤器
  • 对共享分布表中的数字或列表基础输入限制的执行
  • 自动以条件色彩规则突出范围值
  • 创建可审计的工作表,具有可见数据质量规则

页面设置和工作表保护

  • 使用 PageSetup 设置打印设置:纸张大小、方向、适合页面、打字区域
  • 通过 PrintOptionsModel 打印的网格和标题相结合
  • 使用 WorksheetProtectionModel保护工作表和精细的许可证
  • 通过 Hyperlink 和 HyperLinkCollection 在工作表中存储 hyperlinks

谁使用这个功能

  • 创建从 Java 背景服务中打印准备的发票和报告
  • 锁定公式细胞,同时允许数据进入未受保护的范围
  • 将导航链接嵌入到创建的工作簿中的页面之间
  • 创建标准输出,没有手动页面设置正确打印

创建工作簿,写值,并保存

创建工作簿,设置单元格值和风格,调整行和列尺寸,并使用 Workbook.save()将其保存到 .xlsx 文件中。

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");
        }
    }
}

加载与诊断工作簿

使用 LoadOptions 加载现有 .xlsx 文件以启用修复模式,然后检查负载诊断之前保存修改工作簿。

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");
        }
    }
}

数据验证和条件格式化

添加一个全数验证规则,并在单一工作簿中突出合格的细胞,具有勇敢的条件格式。

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");
        }
    }
}
  

支持和学习资源

 中文