使用 Apche poi 简单读写 Excel
首先:毋庸置疑,我们得去官网下载POI,地址:http://jakarta.apache.org/poi/
如下图(由于本人英语不是很好,初学时找下载的地方找了好长时间,所以直接把图贴出来,方便下载使用):
点击Download跳转:
下载poi-bin-3.11-beta2-20140822.zip解压,并把jar包引入到项目中;至此,我们的第一步准备工作就完成了(是不是灰常简单呢)。
在项目中想把 Excel 数据导入数据库中或者是将数据库中的数据导出为 Excel,POI 是个不错的选择。
Apache POI 是 Apache 软件基金会的开放源码函式库,POI 提供 API 给 Java 程式对Microsoft Office 格式档案读和写的功能。
1)HSSF- 提供读写Microsoft Excel格式档案的功能,Excel 2003(.xls)。
2)XSSF - 提供读写Microsoft Excel OOXML格式档案的功能,Excel 2007(.xlsx)。
3)HWPF - 提供读写Microsoft Word格式档案的功能。
4)HSLF - 提供读写Microsoft PowerPoint格式档案的功能。
5)HDGF - 提供读写Microsoft Visio格式档案的功能。
下面是两个简单的Excel读写功能:
XLSReader.java
package com.poi; import java.io.FileInputStream; import java.io.IOException; import java.util.ArrayList; import java.util.List; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook; /** * excel读取 * @author Snow * HSSF用于2003版即以 .xls结尾 * XSSF用于2007版 以 .xlsx结尾 */ public class XLSReader { public static List readExcelData(String url)throws Exception{ // 从XLSX/ xls文件创建的输入流 FileInputStream fis = new FileInputStream(url); List hospitalList = new ArrayList(); // 创建工作薄Workbook Workbook workBook = null; // 读取2007版,以 .xlsx 结尾 if(url.toLowerCase().endsWith("xlsx")){ try { workBook = new XSSFWorkbook(fis); } catch (IOException e) { e.printStackTrace(); } } // 读取2003版,以 .xls 结尾 else if(url.toLowerCase().endsWith("xls")){ try { workBook = new HSSFWorkbook(fis); } catch (IOException e) { e.printStackTrace(); } } //Get the number of sheets in the xlsx file int numberOfSheets = workBook.getNumberOfSheets(); // 循环 numberOfSheets for(int sheetNum = 0; sheetNum < numberOfSheets; sheetNum++){ // 得到 工作薄 的第 N个表 Sheet sheet = workBook.getSheetAt(sheetNum); Row row; String cell; for(int i = sheet.getFirstRowNum(); i < sheet.getPhysicalNumberOfRows(); i++){ // 循环行数 row = sheet.getRow(i); for(int j = row.getFirstCellNum(); j < row.getPhysicalNumberOfCells(); j++){ // 循环列数 cell = row.getCell(j).toString(); hospitalList.add(cell); // System.out.println(cell+"\t"); } } } return hospitalList; } public static void main(String[] args)throws Exception { List list = readExcelData("E:/hospital.xlsx"); System.out.println(list); } }
XLSWriter.java
package com.poi; import java.io.FileOutputStream; import org.apache.poi.xssf.usermodel.XSSFCell; import org.apache.poi.xssf.usermodel.XSSFRichTextString; import org.apache.poi.xssf.usermodel.XSSFRow; import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook; /** * * @author Snow * 简单的写入 excel * HSSF实现 excel 2003(以 .xls 结尾的文件) * XSSF实现 excel 2007(以 .xlsx 结尾的文件) */ public class XLSWriter { public static void main(String[] args)throws Exception{ // 创建工作薄 XSSFWorkbook workBook = new XSSFWorkbook(); // 在工作薄中创建一工作表 XSSFSheet sheet = workBook.createSheet(); // 在指定的索引处创建一行 XSSFRow row = sheet.createRow(0); // 在指定的索引处创建一列(单元格) XSSFCell code = row.createCell(0); // 定义单元格为字符串类型 code.setCellType(XSSFCell.CELL_TYPE_STRING); // 在单元格输入内容 XSSFRichTextString codeContent = new XSSFRichTextString("医院编号"); code.setCellValue(codeContent); XSSFCell city = row.createCell(1); city.setCellType(XSSFCell.CELL_TYPE_STRING); XSSFRichTextString cityContent = new XSSFRichTextString("城市"); city.setCellValue(cityContent); // 新建一输出流并把相应的excel文件存盘 FileOutputStream fos = new FileOutputStream("E:/hos.xlsx"); workBook.write(fos); fos.flush(); //操作结束,关闭流 fos.close(); System.out.println("文件生成"); } }
供初学者参考
原文地址:http://blog.csdn.net/u014011236/article/details/39182051
相关推荐
- **JExcelAPI**: 一个更简单的库,支持读写Excel文件,但不支持较新的OOXML格式。 - **Apache POI-HSMF**: 用于处理Outlook的MSG文件。 - **Apache POI-OOXML-Schemas**: 提供对OOXML标准的直接访问,用于自定义...
Apache POI 是一个开源项目,专门用于处理Microsoft Office格式的文件,包括Excel...以上就是关于使用Apache POI进行Excel读写的基本介绍和总结。实际应用中,开发者可以根据需求扩展这些基础操作,实现更复杂的功能。
在Android开发中,Apache POI 提供了处理Excel文件的能力,使得开发者可以在Android设备上进行Excel的读写操作,无需依赖微软的软件环境。这个库简化了与Excel数据交互的过程,使得在移动应用中处理数据变得更加便捷...
以下是对使用Apache POI HSSF进行Excel读写操作的详细知识点: 1. **HSSF模型**:Apache POI使用了一种类似于Excel内部结构的模型来表示工作簿、工作表、行、单元格等元素。HSSFWorkbook代表一个工作簿,HSSFSheet...
总的来说,“POI读写excel文件+poi简单文档”涵盖了Apache POI在Java环境中处理Excel文件的基础和进阶知识,是学习和使用POI进行Excel操作的重要参考资料。通过学习和实践,开发者可以轻松地在Java程序中实现Excel...
总结,Apache POI为Java开发者提供了强大的Excel操作工具,通过理解并熟练掌握其核心概念、API和使用方法,可以轻松地在Java应用中实现Excel文件的读写和处理。在实际项目中,根据需求选择合适的API,配合Maven配置...
Java中的Apache POI库是一个强大的工具,用于读取和写入Microsoft Office格式的文件,特别是Excel的XLS和XLSX格式。在这个5.2.1版本中,POI提供了对Excel电子表格的强大支持,包括读取数据、修改内容、创建新工作簿...
在本案例中,我们关注的是如何使用 Apache POI 库来导出 Excel 文件,特别是根据模板导出和简单列表导出。下面将详细介绍这个过程。 1. **Apache POI 概述** Apache POI 提供了 Java API 来读写 Microsoft Office ...
5. **poi-examples**: 包含了使用Apache POI API的示例代码,可以帮助开发者理解如何实际操作Excel文件。 6. **poi-excelant**: 提供了用于构建和执行Ant任务的工具,这些任务与Excel操作有关,例如创建或处理Excel...
在Java编程环境中,Apache POI库是一个非常实用的工具,它允许我们操作Microsoft Office格式的文件,特别是Excel(.xls和.xlsx)文件。在JMeter测试框架中,我们可以结合使用POI库和BeanShell组件来读取和写入Excel...
Apache POI是一个开源项目,由Apache软件基金会维护,专门用于处理Microsoft Office格式的文件,如Word(.doc/.docx)、Excel(.xls/.xlsx)、PowerPoint(.ppt/.pptx)等。这个资源包是Java开发者在跨平台上读取、...
Apache POI HSSF和XSSF读写EXCEL总结
Apache POI是一个流行的开源库,专门用于处理Microsoft Office格式的文件,包括Excel(.xls和.xlsx)和Word(.doc和.docx)。在本场景中,我们关注的是使用POI 3.1版本来读取和写入Excel以及WPS的ET文件。POI 3.1是...
附件是java poi 3.17的lib库及其依赖库,全部下载引用后,可以进行excel的读写操作,无需引用其他lib库。poi-3.17适用于jdk1.7。 Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft ...
在Java开发中,Apache POI是一个...通过以上内容,你应该对使用Apache POI进行Java开发中的Excel操作有了更深入的理解。实践时,可以结合具体的业务需求,灵活运用POI提供的API,实现高效、可靠的Excel文档处理功能。
1. HSSF:这是Apache POI对早期Excel文件格式的支持,主要用于读写.xls文件。HSSF提供了一系列的类,如`HSSFWorkbook`代表工作簿,`HSSFSheet`代表工作表,`HSSFRow`代表行,`HSSFCell`代表单元格。开发者可以通过...
"poi3.9读写excel兼容03和07版本"这个标题指的是使用Apache POI 3.9版本的API,能够兼容两种不同格式的Excel文件:.xls(Excel 2003及更早版本)和.xlsx(Excel 2007及更高版本)。 在描述中提到的"完美修订版本...
本文将详细介绍如何使用POI库在Java中进行Excel的读写操作,以及一个在Eclipse环境中运行的实例。 首先,我们需要了解Apache POI的基本概念。POI是Apache软件基金会的一个开源项目,它提供了Java API来处理...
标题“读写Excel2007 POI3.8”涉及的是使用Apache POI库的3.8版本处理Microsoft Excel 2007文件的方法。Apache POI是Java的一个开源项目,专门用于读取、创建和修改Microsoft Office格式的文件,特别是Excel文件。在...
总结起来,Apache POI 3.9在读写Excel方面提供了强大的功能,不仅支持旧版的XLS格式,而且在处理XLSX文件时同样游刃有余。开发者可以根据需求,利用这些API创建复杂的Excel应用,如报表生成、数据分析等。