apache poi支持java对许多格式的文件进行导入、操作、生成,而poi的几个jar包有各自支持的文件格式,可以选择性导入需要的jar包。具体如下:
POIFS | OLE2 Filesystem | poi | Required to work with OLE2 / POIFS based files |
HPSF | OLE2 Property Sets | poi | |
HSSF | Excel XLS | poi | For HSSF only, if common SS is needed see below |
HSLF | PowerPoint PPT | poi-scratchpad | |
HWPF | Word DOC | poi-scratchpad | |
HDGF | Visio VSD | poi-scratchpad | |
HPBF | Publisher PUB | poi-scratchpad | |
HSMF | Outlook MSG | poi-scratchpad | |
OpenXML4J | OOXML | poi-ooxml plus one of poi-ooxml-schemas, ooxml-schemas |
Only one schemas jar is needed, see below for differences |
XSSF | Excel XLSX | poi-ooxml | |
XSLF | PowerPoint PPTX | poi-ooxml | |
XWPF | Word DOCX | poi-ooxml | |
Common SS | Excel XLS and XLSX | poi-ooxml | WorkbookFactory and friends all require poi-ooxml, not just core poi |
详情可以到官网http://poi.apache.org/components/上查看。
使用poi生成excel文件
java使用poi的api生成excel时,有清晰的逻辑过程,每一行代码的操作可以准确对应到在excel文件上的每一个操作。 下面的例子没有解释那么详细,因为很多方法作用熟悉excel的人一眼就看出来了
//创建Workbook 对应一个excel文件 HSSFWorkbook workbook = new HSSFWorkbook(); //创建sheet 对应excel文件中的sheet HSSFSheet sheet = workbook.createSheet("handleKnot"); //设置列宽 256代表一个字符宽度 10*256代表10个字符宽度 sheet.setColumnWidth(0, 10*256); //生成行 Row row_1 = sheet.createRow(0) Row row_2 = sheet.createRow(1) //设置行高 row_1.setHeightInPoints(80); row_2.setHeightInPoints(170); //生成单元格 Cell cell_1_1 = row_1.createCell(0); Cell cell_2_1 = row_2.createCell(0); Cell cell_2_2 = row_2.createCell(1); // 配置字体样式 Font font = workbook.createFont(); font.setBoldweight(Font.BOLDWEIGHT_BOLD); font.setFontHeightInPoints((short)18); font.setFontName("黑体"); // 配置单元格样式 CellStyle style = workbook.createCellStyle(); style.setWrapText(true); style.setAlignment(CellStyle.ALIGN_CENTER); style.setVerticalAlignment(CellStyle.VERTICAL_CENTER); style.setBorderBottom(CellStyle.BORDER_THIN); style.setBorderLeft(CellStyle.BORDER_THIN); style.setBorderRight(CellStyle.BORDER_THIN); style.setBorderTop(CellStyle.BORDER_THIN); style.setFont(font); //为单元格配置样式 cell_1_1.setCellStyle(style); cell_2_1.setCellStyle(style); cell_2_2.setCellStyle(style); // 设置单元格值 cell_1_1.setCellValue("清远医保医疗智能审核平台(事后)业务办结表"); cell_2_1.setCellValue("需处理的业务事项"); //位单元格输入特殊格式值 比如单元格值换行就要如下这样写 String teString = "mao \r\n kk \r\n justin"; HSSFRichTextString richTextString = new HSSFRichTextString(teString); cell_2_2.setCellValue(richTextString); // 合并单元格参数时起始行 、终止行、起始列、终止列 CellRangeAddress address1 = new CellRangeAddress(0,0,0,3); sheet.addMergedRegion(address1); // 设置合并单元格的边框 这里要注意被合并的单元格要先生成 在合并 不然这个边框设置不生效 RegionUtil.setBorderBottom(CellStyle.BORDER_THIN, address1, sheet, workbook); RegionUtil.setBorderLeft(CellStyle.BORDER_THIN, address1, sheet, workbook); RegionUtil.setBorderRight(CellStyle.BORDER_THIN, address1, sheet, workbook); RegionUtil.setBorderTop(CellStyle.BORDER_THIN, address1, sheet, workbook); // 设置打印页面 PrintSetup printSetup = sheet.getPrintSetup(); printSetup.setPaperSize(PrintSetup.A4_PAPERSIZE);
应用
在生产环境中,大多数的excel都是以一行标题+多行值得形式呈现的,这样再每个单元格设置是相当低效的。
比如要将数据库中查询的数据存到excel中并导出,可以将标题与对应内容在库中查询时的key存在一个list中,再将库中取出的数据key值与list中的key值比对,再存到对应位置。我说的相当粗略,对于每个单元格格式内容的生成都可以包装
相关推荐
开发人员可以使用Apache POI库来读取、写入和修改这些格式的文档。 提供多种API:Apache POI库提供了多种API,包括HSSF、XSSF、HWPF、XWPF、HSLF和XSLF等。这些API可以帮助开发人员处理不同类型的Office文档,例如...
Apache POI是一个开源项目,由Apache软件基金会维护,专门用于处理Microsoft Office格式的文件,如Word(.doc/.docx)、Excel(.xls/.xlsx)、PowerPoint(.ppt/.pptx)等。这个资源包是Java开发者在跨平台上读取、...
开发者可能需要使用特定的版本或者第三方库(如 Apache POI Android Port 或 XLSX4J)来避免内存泄漏和提高性能。 3. **Excel文件读写** - **读取Excel**:使用Apache POI,开发者可以打开Excel文件,访问工作簿、...
使用Apache POI,开发者可以创建、读取和修改Excel工作簿、工作表、单元格、公式,甚至可以处理图表、图片和样式。此外,它也支持Word和PowerPoint文件的操作。Apache POI源码的提供使得开发者能够深入理解其内部...
Apache POI是Apache软件基金会提供的100%开源库。大多数中小规模的应用程序开发主要依赖于Apache POI(HSSF+ XSSF)。它支持Excel 库的所有基本功能; 然而,呈现和文本提取是它的主要特点。
Apache POI 提供了Java API,使得开发者可以使用Java来读取、写入和修改这些文件。在给定的"apache-poi-3.17(最新稳定版本)"中,我们聚焦于3.17这个稳定版,它是截止到提及时的最新版本。 Apache POI 3.17版本是...
**使用Apache POI进行Excel操作** 1. **创建工作簿**: 使用`WorkbookFactory.create()`方法可以创建一个新的工作簿对象。 2. **添加工作表**: 调用`Workbook`的`createSheet()`方法可以创建新工作表,并返回一个`...
Apache POI是Java领域中广泛使用的库,专为处理Microsoft Office格式的文件而设计,特别是Excel文档。这个库使得在不依赖Microsoft Office的情况下,开发者能够读取、创建、修改和操作XLS、XLSX等Excel文件。在本文...
6. **使用说明**:`使用说明.txt`文件可能包含有关如何安装、配置和开始使用Apache POI API的指南,这对于初学者来说特别有用。 值得注意的是,压缩包中还包含了一些与Apache POI无关的链接文件,如`.url`文件,...
5. **poi-examples**: 包含了使用Apache POI API的示例代码,可以帮助开发者理解如何实际操作Excel文件。 6. **poi-excelant**: 提供了用于构建和执行Ant任务的工具,这些任务与Excel操作有关,例如创建或处理Excel...
Apache POI 是一个开源项目,由Apache软件基金会维护,它主要致力于处理Microsoft Office格式的文件,如Excel(.xlsx, .xls),Word(.doc, .docx)和PowerPoint(.ppt, .pptx)。POI库为Java开发者提供了一套API,...
这很可能是Apache POI 2版本的API参考手册,开发者可以通过它查找具体的方法、类和接口,了解如何在代码中使用这些功能。 通过Apache POI,Java开发者可以实现以下功能: 1. 创建新的Excel工作簿(Workbook)。 2....
org.apache.poi JAR包,解决个人的 import org.apache.commons.beanutils.PropertyUtilsBean; import org.apache.commons.lang.StringUtils; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi...
在Word文档处理中,Apache POI使用HWPF来创建Document对象。可以插入Paragraphs、Runs来添加文本,使用Field对象插入字段,例如页码。此外,HWPF也支持插入图片,如JPEG或EMF格式,以及创建和编辑表格。 4. **替换...
org.apache.poi JAR包,解决个人的 import org.apache.commons.beanutils.PropertyUtilsBean; import org.apache.commons.lang.StringUtils; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi...
本篇将详细介绍Apache POI在Excel操作中的应用,包括基本概念、使用步骤、关键类和方法以及实际示例。 1. 基本概念 - HSSF (Horrible Spreadsheet Format):用于处理旧版的BIFF格式Excel文件(.xls)。 - XSSF ...
Apache POI 是一个开源项目,专门用于处理Microsoft Office格式的文件,如Word(.doc/.docx)、Excel(.xls/.xlsx)、PowerPoint(.ppt/.pptx)等。这个"org.apache.poi"依赖包是Java开发者在处理这些文件时不可或缺...
一、Apache POI简介 Apache POI是Java社区中的一个流行库,它允许开发人员在不依赖Microsoft Office的情况下,用Java代码来操作和生成Excel(XLS和XLSX)、Word(DOC和DOCX)以及PowerPoint(PPT和PPTX)文档。POI...
这个压缩包里有apache poi技术所使用的的jar包 包括:commons-beanutils-1.8.0.jar,commons-collections-3.2.jar,commons-io-2.2.jar,org.apache.servicemix.bundles.dom4j-2.1.1_1.jar,poi-3.9.jar,poi-ooxml-...
本篇文章提供了一个简单的示例代码,演示了如何使用Apache POI生成Word文档。开发者可以根据自己的需要,调整和修改示例代码,以满足自己的需求。 知识点: 1.Archive POI是一个开源的Java库,用于对Microsoft ...