java创建excel的两种方式

来源:互联网 发布:软件合同范本 编辑:程序博客网 时间:2024/05/14 08:43

方法一,利用第三方jar包:jxl.jar

 

[java] view plain copy
  1. public void createExcel(){  
  2.         try{  
  3.             //打开文件  
  4.             WritableWorkbook workbook = Workbook.createWorkbook(new File("test.xls"));  
  5.             //生成名为“第一页”的工作表,参数0表示这是第一页   
  6.             WritableSheet sheet = workbook.createSheet("第一页"0);  
  7.             //在Label对象的构造子中指名单元格位置是第一列第一行(0,0)   
  8.             //以及单元格内容为test   
  9.             Label label = new Label(0,0,"test");  
  10.             //将定义好的单元格添加到工作表中   
  11.             sheet.addCell(label);  
  12.             /*生成一个保存数字的单元格    
  13.              * 必须使用Number的完整包路径,否则有语法歧义    
  14.              * 单元格位置是第二列,第一行,值为789.123*/   
  15.             jxl.write.Number number = new jxl.write.Number(1,0,756);  
  16.               
  17.             sheet.addCell(number);  
  18.               
  19.             sheet.insertColumn(1);  
  20.               
  21.             workbook.copySheet(0"第二页"1);  
  22.               
  23.             WritableSheet sheet2 = workbook.getSheet(1);  
  24.             Range range = sheet2.mergeCells(0008);  
  25.             sheet2.unmergeCells(range);  
  26.               
  27.             sheet2.addImage(new WritableImage(551020new File("F:\\09.png")));  
  28.               
  29.               
  30.             CellView cv = new CellView();  
  31.               
  32.             WritableCellFormat cf = new WritableCellFormat();  
  33.             cf.setBackground(Colour.BLUE);  
  34.               
  35.             cv.setFormat(cf);  
  36.             cv.setSize(6000);  
  37.             cv.setDimension(10);  
  38.               
  39.             sheet2.setColumnView(2, cv);  
  40.               
  41.             workbook.write();  
  42.             workbook.close();  
  43.               
  44.         }catch(Exception e){}  
  45.     }  


同时,读取Excel中的内容为:

[java] view plain copy
  1. public void displayExcel(){  
  2.         try {  
  3.             Workbook wb = Workbook.getWorkbook(new File("test.xls"));  
  4.               
  5.             Sheet s = wb.getSheet(0);  
  6.             System.out.println(s.getCell(00).getContents());  
  7.         } catch (BiffException e) {  
  8.             // TODO Auto-generated catch block  
  9.             e.printStackTrace();  
  10.         } catch (IOException e) {  
  11.             // TODO Auto-generated catch block  
  12.             e.printStackTrace();  
  13.         }  
  14.           
  15.     }  

 

方法二,利用jar包:poi-3.2-FINAL-20081019.jar

[java] view plain copy
  1. public void exportExcel(){  
  2.           
  3.         HSSFWorkbook wb = new HSSFWorkbook();//创建工作薄  
  4.           
  5.         HSSFFont font = wb.createFont();  
  6.         font.setFontHeightInPoints((short)24);  
  7.         font.setFontName("宋体");  
  8.         font.setColor(HSSFColor.BLACK.index);  
  9.         font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);  
  10.           
  11.         HSSFCellStyle style = wb.createCellStyle();  
  12.         style.setAlignment(HSSFCellStyle.ALIGN_CENTER);  
  13.         style.setFillForegroundColor(HSSFColor.LIGHT_TURQUOISE.index);  
  14.         style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);  
  15.         style.setBorderBottom(HSSFCellStyle.BORDER_THICK);  
  16.         style.setFont(font);  
  17.           
  18.         HSSFSheet sheet = wb.createSheet("test");//创建工作表,名称为test  
  19.           
  20.         int iRow = 0;//行号  
  21.         int iMaxCol = 17;//最大列数  
  22.         HSSFRow row = sheet.createRow(iRow);  
  23.         HSSFCell cell = row.createCell((short)0);  
  24.         cell.setCellValue(new HSSFRichTextString("测试excel"));  
  25.         cell.setCellStyle(style);  
  26.         sheet.addMergedRegion(new Region(iRow,(short)0,iRow,(short)(iMaxCol-1)));  
  27.           
  28.         ByteArrayOutputStream os = new ByteArrayOutputStream();  
  29.           
  30.         try{  
  31.             wb.write(os);  
  32.         }catch(IOException e){  
  33.             e.printStackTrace();  
  34.             //return null;  
  35.         }  
  36.           
  37.         byte[] xls = os.toByteArray();  
  38.           
  39.         File file = new File("test01.xls");  
  40.         OutputStream out = null;  
  41.         try {  
  42.              out = new FileOutputStream(file);  
  43.              try {  
  44.                 out.write(xls);  
  45.             } catch (IOException e) {  
  46.                 // TODO Auto-generated catch block  
  47.                 e.printStackTrace();  
  48.             }  
  49.         } catch (FileNotFoundException e1) {  
  50.             // TODO Auto-generated catch block  
  51.             e1.printStackTrace();  
  52.         }  
  53.           
  54.           
  55.     }  


 这里补上相关的jar包:jxl.jar, poi.jar   的下载地址:

http://download.csdn.net/download/kuangfengbuyi/4658127

0 0
原创粉丝点击