JSP中写Excel文件

来源:互联网 发布:淘宝网天猫商城 编辑:程序博客网 时间:2024/06/06 02:59
Excel是办公常用软件之一。在一个Java应用中,将一部分数据生成Excel格式,是与其他系统无缝连结的重要手段。POI是Apache Jakarta的子项目,使用简单方便,对中文支持非常好,功能也比较强大。下在地址为:http://jakarta.apache.org/poi。这套API是纯Java的,并不依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel文件。目前从网上下载最新的安装包的名字是poi-bin-2.5.1-final-20040804.zip,将该文件解压缩之后,在生成的文件夹中,找到poi-2.5.1-final-20040804.jar包。然后,将该包放置到应用程序的WEB-INF的lib下,重启Tomcat即可。

以下是用POI创建Excel工作薄的例子:

<%@ page contentType="text/html;charset=gb2312"%>                                                              

<%@ page import="java.io.*,org.apache.poi.hssf.usermodel.*"%>

<%

     HSSFWorkbook workbook = new HSSFWorkbook();   //创建新的Excel工作薄

     HSSFSheet sheet = workbook.createSheet("JSP");   //在Excel工作薄中建工作表,名为缺省

     HSSFRow row = sheet.createRow((short)0); //在索引0的位置建行(最顶端的行)

    

     HSSFCell cell = row.createCell((short)0); //在索引0的位置建单元格

     cell.setEncoding(HSSFCell.ENCODING_UTF_16); //定义单元格为字符串类型

     cell.setCellValue("作者"); //在单元格输入一些内容

     cell = row.createCell((short)1);

     cell.setEncoding(HSSFCell.ENCODING_UTF_16); //定义单元格为字符串类型

     cell.setCellValue("编辑");  //在单元格输入一些内容

    

     row = sheet.createRow((short)1); //在索引1的位置创建行(最顶端的行)

     cell = row.createCell((short)0); //在索引0的位置创建单元格(左上端)

 ; cell.setEncoding(HSSFCell.ENCODING_UTF_16); //定义单元格为字符串类型

 

     cell.setCellValue("张三"); //在单元格输入一些内容

     cell=row.createCell((short)1);

      cell.setEncoding(HSSFCell.ENCODING_UTF_16); //定义单元格为字符串类型

      cell.setCellValue("李四");

     

      String filename = application.getRealPath("/") + "text.xls";  //filename是工作薄的存放位置,存放在当前应用程序的根目录下

      FileOutputStream fOut = new FileOutputStream(filename); //新建输出文件流

      workbook.write(fOut); //把相应的Excel工作薄存盘

      fOut.flush();

      fOut.close(); //操作结束,关闭文件

      out.println("excel文件已经生成,存放在<BR>" + filename);

%>