前言
表格是Excel中非常常见的功能,它可以帮助我们更加简单高效地管理和分析数据。在本文中,将为大家介绍如何在Java中完成表格的一些常见操作:
创建表格
删除表格
排序
操作行列
样式
在Java中实现Excel表格操作的方法
1.添加测试数据
代码如下,接收一个 workbook 的对象,并且在 A1:F7 设置测试数据,用于表格使用。
private void exampleData(Workbook wb) {
IWorksheet sheet = wb.getWorksheets().get(0);
Object data = new Object[][]{
{"Name", "City", "Birthday", "Eye color", "Weight", "Height"},
{"Richard", "New York", new GregorianCalendar(1968, 5, 8), "Blue", 67, 165},
{"Nia", "New York", new GregorianCalendar(1972, 6, 3), "Brown", 62, 134},
{"Jared", "New York", new GregorianCalendar(1964, 2, 2), "Hazel", 72, 180},
{"Natalie", "Washington", new GregorianCalendar(1972, 7, 8), "Blue", 66, 163},
{"Damon", "Washington", new GregorianCalendar(1986, 1, 2), "Hazel", 76, 176},
{"Angela", "Washington", new GregorianCalendar(1993, 1, 15), "Brown", 68, 145}
};
sheet.getRange("A1:F7").setValue(data);
sheet.getRange("A:F").setColumnWidth(15);
}
2.创建表格
public void createTable(){
Workbook wb = new Workbook();
exampleData(wb);
IWorksheet sheet = wb.getWorksheets().get(0);
sheet.getTables().add(sheet.getRange("A1:F7"), true);
wb.save("output/createTable.xlsx");
}
结果如下:
3.删除表格
通过ITable上的delete,可以直接删除表格。
public void deleteTable(){
Workbook wb = new Workbook();
wb.open("output/createTable.xlsx");
IWorksheet sheet = wb.getWorksheets().get(0);
sheet.getTables().get(0).delete();
wb.save("output/removeTable.xlsx");
}
结果如下:
4.数据排序
public void sortTable(){
Workbook wb = new Workbook();
wb.open("output/createTable.xlsx");
IWorksheet sheet = wb.getWorksheets().get(0);
ITable table = sheet.getTables().get(0);
ValueSortField key1 = new ValueSortField(sheet.getRange("A1:A2"), SortOrder.Ascending);
table.getSort().getSortFields().add(key1);
table.getSort().apply();
wb.save("output/TableSort.xlsx");
}
结果如下:
5.操作行列
public void editRowColumn(){
Workbook wb = new Workbook();
wb.open("output/createTable.xlsx");
IWorksheet sheet = wb.getWorksheets().get(0);
ITable table = sheet.getTables().get(0);
table.getColumns().add(0);
table.getColumns().add(1);
table.getColumns().get(0).delete();
table.getColumns().get("City").delete();
table.getRows().add();
table.getRows().get(1).delete();
wb.save("output/InsertDeleteTableRowColumns.xlsx");
}
结果如下:
6.修改样式
public void SetStyle(){
Workbook wb = new Workbook();
wb.open("output/createTable.xlsx");
IWorksheet sheet = wb.getWorksheets().get(0);
ITable table = sheet.getTables().get(0);
ITableStyle style = wb.getTableStyles().add("test");
table.setTableStyle(style);
ITableStyle tableStyle = wb.getTableStyles().get("TableStyleMedium3");
table.setTableStyle(tableStyle);
wb.save("output/ApplyTableStyle.xlsx");
}
结果如下:
总结
以上就是在 Java 中实现Excel表格操作的基本用法,如果您想了解更多信息,可以参考这篇帮助手册和在线Demo,无论是初学者还是有经验的专业人士,都将为您提供有价值的指导和帮助。
GcExcel | 下载试用
GrapeCity Documents for Excel (简称:GcExcel)是一款基于 Java 平台的服务端高性能表格组件,可与纯前端表格控件 SpreadJS 前后端兼容,无需依赖 Office、POI 或第三方应用软件,在前端展示电子表格数据,在服务端批量创建、加载、编辑、打印、导入/导出 Excel 文档,为您开发的应用程序提供在线文档的前后端数据同步、在线填报与服务端批量导出与打印,以及类 Excel 报表模板设计与服务端高性能处理等一整套类 Excel 全栈解决方案。
葡萄城热门产品
活字格
打通现有软件,快速定制面向未来的个性化应用
SpreadJS
可嵌入您系统的在线Excel的纯前端表格控件
Wyn商业智能
可与企业自有系统深度集成,增强数据分析的 BI 工具