快速业务通道

浅谈Excel报表在Java程序中的应用 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-22
成的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);   }  } }

浅谈Excel报表在Java程序中的应用(3)

时间:2010-12-30 计算机与信息技术 周洪斌

与数据库结合使用

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

/*把数据集rs中的数据导出至Excel工作表中。 *传入参数:数据集rs,Excel文件名称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.1的doc文件夹中)。总之,使用POI,我们可以较好地解决Java编程中的Excel报表问题,进一步满足用户的需求

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号