JSP中将部分数据生成Excel格式

 

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工作薄的例子:

 

<%

     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文件已经生成,存放在" + filename);

%>

你可能感兴趣的:(Excel)