`
Ryan200909
  • 浏览: 9306 次
社区版块
存档分类
最新评论

JAVA实现Excel导入/导出

    博客分类:
  • poi
阅读更多

 

POI下载与安装

  请到网站http://www.apache.org/dyn/closer.cgi/poi/右击超链接2.5.1.zip下载压缩包poi-bin-2.5.1-final-20040804.zip,解压缩后得到如图2.1所示的目录结构。我们主要用到poi-2.5.1-final-20040804.jar这个库文件。请把poi-2.5.1-final-20040804.jar这个文件的路径添加到系统环境变量classpath中,否则无法编译下面的示例程序。



2.1 POI的目录结构

  POI使用初步

  POI提供给用户使用的对象在org.apache.poi.hssf.usermodel包中,主要部分包括Excel对象、样式和格式,还有辅助操作等。

  最主要的几个对象如表3.1所示:

  表3.1 POI主要对象

POI对象名称

对应的Excel对象

HSSFWorkbook

工作簿

HSSFSheet

工作表

HSSFRow

HSSFCell

单元格


  下面我们来看如下的例子,使用表3.1中的对象在程序的当前目录下创建一个Excel文件test.xls,在第一个单元格中写入内容,然后读出第一个单元格的内容。

  完整的程序如下:

import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFCell;
import java.io.FileOutputStream;
import java.io.FileInputStream;

public class CreateXL
{
 public static String xlsFile="test.xls"; //产生的Excel文件的名称
 public static void main(String args[])
 {
  try
  {
   HSSFWorkbook workbook = new HSSFWorkbook(); //产生工作簿对象
   HSSFSheet sheet = workbook.createSheet(); //产生工作表对象
   //设置第一个工作表的名称为firstSheet
   //为了工作表能支持中文,设置字符编码为UTF_16
   workbook.setSheetName(0,"firstSheet",HSSFWorkbook.ENCODING_UTF_16);
   //产生一行
   HSSFRow row = sheet.createRow((short)0);
   //产生第一个单元格
   HSSFCell cell = row.createCell((short) 0);
   //设置单元格内容为字符串型
   cell.setCellType(HSSFCell.CELL_TYPE_STRING);
   //为了能在单元格中写入中文,设置字符编码为UTF_16
   cell.setEncoding(HSSFCell.ENCODING_UTF_16);
   //往第一个单元格中写入信息
   cell.setCellValue("测试成功");
   FileOutputStream fOut = new FileOutputStream(xlsFile);
   workbook.write(fOut);
   fOut.flush();
   fOut.close();
   System.out.println("文件生成...");
   //以下语句读取生成的Excel文件内容
   FileInputStream fIn=new FileInputStream(xlsFile);
   HSSFWorkbook readWorkBook= new HSSFWorkbook(fIn);
   HSSFSheet readSheet= readWorkBook.getSheet("firstSheet");
   HSSFRow readRow =readSheet.getRow(0);
   HSSFCell readCell = readRow.getCell((short)0);
   System.out.println("第一个单元是:" + readCell.getStringCellValue());
  }
  catch(Exception e)
  {
   System.out.println(e);
  }
 }
}


  与数据库结合使用

  使用POI,结合JDBC编程技术,我们就可以方便地将数据库中的数据导出生成Excel报表。其关键代码如下:

/*把数据集rs中的数据导出至Excel工作表中。
*
传入参数:数据集rsExcel文件名称xlsName,工作表名称sheetName
*/

public static void resultSetToExcel(ResultSet rs,String xlsName,String sheetName) throws Exception
{
 HSSFWorkbook workbook = new HSSFWorkbook();
 HSSFSheet sheet = workbook.createSheet();
 workbook.setSheetName(0,sheetName,HSSFWorkbook.ENCODING_UTF_16);
 HSSFRow row= sheet.createRow((short)0);;
 HSSFCell cell;
 ResultSetMetaData md=rs.getMetaData();
 int nColumn=md.getColumnCount();
 //写入各个字段的名称
 for(int i=1;i<=nColumn;i++)
 {
  cell = row.createCell((short)(i-1));
  cell.setCellType(HSSFCell.CELL_TYPE_STRING);
  cell.setEncoding(HSSFCell.ENCODING_UTF_16);
  cell.setCellValue(md.getColumnLabel(i));
 }

 int iRow=1;
 //写入各条记录,每条记录对应Excel中的一行
 while(rs.next())
 {row= sheet.createRow((short)iRow);;
  for(int j=1;j<=nColumn;j++)
  {
   cell = row.createCell((short)(j-1));
   cell.setCellType(HSSFCell.CELL_TYPE_STRING);
   cell.setEncoding(HSSFCell.ENCODING_UTF_16);
   cell.setCellValue(rs.getObject(j).toString());
  }
  iRow++;
 }
 FileOutputStream fOut = new FileOutputStream(xlsName);
 workbook.write(fOut);
 fOut.flush();
 fOut.close();
 JOptionPane.showMessageDialog(null,"导出数据成功!");
}


  结束语

  POI功能强大,还可以设置单元格格式、设置页眉页脚等。限于篇幅的关系就不一一举例了,感兴趣的读者可以参考其帮助文档(在图2.1doc文件夹中)。总之,使用POI,我们可以较好地解决Java编程中的Excel报表问题,进一步满足用户的需求.

分享到:
评论

相关推荐

    JAVA实现Excel导入/导出的功能实现

    请到网站http://www.apache.org/dyn/closer.cgi/poi/右击超链接2.5.1.zip下载压缩包poi-bin-2.5.1-final-20040804.zip,解压缩后得到如图2.1所示的目录结构。我们主要用到poi-2.5.1-final-20040804.jar这个库文件。...

    Java实现Excel导入导出

    Excel源代码,导入导出各种工具类 &lt;groupId&gt;org.apache.poi&lt;/groupId&gt; &lt;artifactId&gt;poi&lt;/artifactId&gt; &lt;/dependency&gt; &lt;groupId&gt;org.apache.poi&lt;/groupId&gt; &lt;artifactId&gt;poi-scratchpad&lt;/artifactId&gt; &lt;/dependency&gt; ...

    通用excel导入/导出 (poi)

    在这个"通用excel导入/导出 (poi)"的示例中,我们主要关注的是Excel文件的处理,特别是如何利用POI库进行数据的导入和导出。下面将详细介绍这个过程中的关键知识点。 首先,让我们了解一下Apache POI。它是Apache...

    java_poi实现excel导入导出

    Java POI 实现 Excel 导入导出 Java POI 是一个流行的 Java 库,用于处理 Microsoft Office 文件格式,包括 Excel 文件。在本文中,我们将详细介绍如何使用 Java POI 实现 Excel 导入导出功能。 1. 什么是 Java ...

    java实现excel导入导出.pdf

    Java 实现 Excel 导入导出 Java 是一种流行的编程语言,Excel 是一种常用的电子表格软件。在 Java 中,实现 Excel 导入导出可以使用多种方式,本文将介绍使用 JXL 和 POI 两个库实现 Excel 导入导出的方法。 使用 ...

    最新java实现Excel导入导出

    用Java实现的Excel的导入导出,简洁明了,高质量代码。

    Java POI EXCEL导入导出

    Java POI EXCEL导入导出Java POI EXCEL导入导出Java POI EXCEL导入导出Java POI EXCEL导入导出Java POI EXCEL导入导出Java POI EXCEL导入导出Java POI EXCEL导入导出

    java实现Excel导入导出

    Java 实现 Excel 导入导出是指使用 Java 语言编写程序来实现将 Excel 文件中的数据导入到 Java 程序中,并将 Java 程序中的数据导出到 Excel 文件中。这种操作可以使用 Apache POI 库来实现。 POI 库简介 Apache ...

    Java实现Excel导入和导出(珍藏版).html

    把Java实现表格的相关操作进行了封装,本次封装是基于 POI 的二次开发,最终使用只需要调用一个工具类中的方法,就能满足业务中绝大部门的导入和导出需求。详细讲解包含源码 把Java实现表格的相关操作进行了封装,...

    JAVA实现数据库数据导入/导出到Excel(POI)

    获取通话记录文件格式vcf的转化,JAVA实现数据库数据导入/导出到Excel(POI)

    基于SSM框架下POI实现Excel导入/导出相关包

    本教程将详细讲解如何在SSM框架下利用POI实现Excel的导入与导出功能。 首先,我们需要了解Apache POI的基本概念。POI是Java平台上处理Microsoft Office文档的标准库,包括HSSF和XSSF两个子项目。HSSF用于处理老版本...

    Java实现Excel导入导出功能

    综上所述,Java实现Excel导入导出功能主要依赖于Apache POI库,通过其提供的API可以方便地读取和写入Excel数据,同时注意性能优化和异常处理,确保功能的稳定性和效率。在实际开发中,还需要结合具体业务需求进行...

    Java poi 实现excel导入导出

    在提供的“java-excel导入导出”压缩包中,可能包含了示例代码、说明文档以及测试数据,可以帮助初学者快速理解和使用Java POI进行Excel操作。通过学习和实践这些示例,你可以掌握Java POI库的基本用法,并能灵活...

    Java实现Excel导入导出操作详解.pptx.pptx

    Java实现Excel导入导出是Java开发中常见的任务,主要用于数据的批量处理和分析,尤其在数据分析、报表生成和数据备份等方面具有广泛应用。要熟练掌握这一技术,开发者需要了解Excel文件的结构,熟悉Java的文件操作,...

    JAVA实现数据库数据导入导出到Excel(POI)所需jar包

    在Java开发中,有时我们需要将数据库中的数据导出到Excel文件,或者从Excel文件...通过正确理解和使用POI库,你可以轻松地实现数据的导入导出,提升工作效率。记得在项目中引入正确的jar包,以确保所有功能的正常运行。

    JAVA中excel导入导出通用方法

    JAVA中excel导入导出通用方法 JAVA 中 excel 导入导出通用方法是指在 Java 项目中实现 excel 文件的导入和导出功能。这种方法可以应用于各种需要 excel 文件交互的业务场景中。 一、引入依赖 在 Java 项目中想要...

    使用Springboot实现excel的导入导出

    在Spring Boot中实现Excel的导入导出可以通过POI库来实现,POI是一个开源的Java库,用于处理Microsoft Office格式文件,包括Excel。一个简单的示例,演示如何在Spring Boot项目中使用POI来实现Excel的导入导出功能。...

    POI实现Excel导入导出并附带加载进度条

    总之,这个项目是一个完整的Java解决方案,用于处理Excel文件的导入导出,同时具备用户友好的进度条显示。它利用了Apache POI的强大功能,结合maven的依赖管理,以及可能的GUI组件,提供了高效且直观的数据操作体验...

Global site tag (gtag.js) - Google Analytics