用于 Microsoft® 电子表格文档的开源 Java 库
通过开源 API 在 Java 应用程序中创建、读取、编辑和转换 Microsoft Excel 电子表格文件。
DOCX4J 入门
首先,您需要在系统上安装 Java 开发工具包 (JDK)。在基于 Maven 的 Java 项目中引用 DOCX4J 更加简单。您只需在 pom.xml 中添加以下依赖项,并让您的 IDE 获取并引用 DOCX4J Jar 文件。
DOCX4J Maven 依赖
<dependency>
<groupId>org.docx4j</groupId>
<artifactId>docx4j-JAXB-Internal</artifactId>
<version>8.0.0</version>
</dependency>
<dependency>
<groupId>org.docx4j</groupId>
<artifactId>docx4j-JAXB-ReferenceImpl</artifactId>
<version>8.0.0</version>
</dependency>
<dependency>
<groupId>org.docx4j</groupId>
<artifactId>docx4j-JAXB-MOXy</artifactId>
<version>8.0.0</version>
</dependency>
用于读取和写入 XLSX 的 Java 库
它是一个强大的库,用于创建和操作现有的以及新的 XLSX 文件格式。它使开发人员能够访问和读取电子表格中特定工作表中的数据。通常,一个电子表格包含多个工作表。如果用户有兴趣仅从一张表中读取数据并跳过其他表。通过使用以下步骤,您可以在 Java 中创建 Microsoft Excel
轻松创建 Excel
- 初始化 SpreadsheetMLPackage 的对象
- 创建工作表
- 获取工作表数据
- 保存文档
使用 Java 创建 Excel Free
// Create spreadsheet package
SpreadsheetMLPackage pkg = SpreadsheetMLPackage.createPackage();
// Create worksheet
WorksheetPart sheet = pkg.createWorksheetPart(new PartName("/xl/worksheets/sheet1.xml"), "Sheet1", 1);
SheetData sheetData = sheet.getContents().getSheetData();
// Save
pkg.save(new File("FileFormat.xlsx"));
使用 Java API 处理电子表格单元格
DOCX4J 允许您访问单元格并通过坐标设置其值。您还可以创建一个新单元格并在其中设置一个公式。您还可以将单元格配置为占用各种类型的数据,例如日期、时间和带有前导零的数字。
在 Excel 单元格中添加内容 - Java
// Create spreadsheet package
SpreadsheetMLPackage pkg = SpreadsheetMLPackage.createPackage();
// Create worksheet
WorksheetPart sheet = pkg.createWorksheetPart(new PartName("/xl/worksheets/sheet1.xml"), "Sheet1", 1);
SheetData sheetData = sheet.getContents().getSheetData();
// Add Data
Row row = Context.getsmlObjectFactory().createRow();
Cell cell = Context.getsmlObjectFactory().createCell();
cell.setV("1234");
row.getC().add(cell);
CTXstringWhitespace ctx = Context.getsmlObjectFactory().createCTXstringWhitespace();
ctx.setValue("Open Source Java Library for Spreadsheet Documents");
CTRst ctrst = new CTRst();
ctrst.setT(ctx);
cell.setT(STCellType.INLINE_STR);
cell.setIs(ctrst);
row.getC().add(cell);
sheetData.getRow().add(row);
// Save
pkg.save(new File("FileFormat.xlsx"));