利用POI 组件包读写Excel文件

一.             下载与环境配置

 1. 下载POI组件包

下载地址:

 http://apache.mirror.phpchina.com/poi/release/bin/poi-bin-3.0.2-FINAL-20080204.zip

说明:   1docs目录:为POI的文档;

        2)根目录下的jar 文件该组件的开发包

 

  二.             源码解析

程序解析展示:

导入的包有:

java.util.*

org.apache.poi.hssf.usermodel.HSSFWorkbook

org.apache.poi.hssf.usermodel.HSSFSheet

org.apache.poi.hssf.usermodel.HSSFRow

org.apache.poi.hssf.usermodel.HSSFCell

java.io.*

 

//创建新的EXCEL 工作薄
    HSSFWorkbook wb  =   new  HSSFWorkbook();
    HSSFSheet sheet  =  wb.createSheet( " sheet1 " );
    HSSFSheet sheet1  =  wb.createSheet( " sheet2 " );

     // 以下以写表头
     // 表头为第一行  没一行输入时都要重新定义  row
     HSSFRow row  =  sheet.createRow(( short )0);
     HSSFRow row1  = sheet1.createRow(( short )0);

    HSSFCell cell1  =  row.createCell(( short )0);
    HSSFCell cell2  =  row.createCell(( short )1);
    HSSFCell cell3  =  row.createCell(( short )2);

    HSSFCell cell11  =  row1.createCell(( short )0);
    HSSFCell cell21  =  row1.createCell(( short )1);
    HSSFCell cell31  =  row1.createCell(( short )2);

    //设置每列的属性名
    cell1.setEncoding(( short )1);
    cell1.setCellType( 1 );
    cell2.setEncoding(( short )1);
    cell2.setCellType( 1 );
    cell3.setEncoding(( short )1);
    cell3.setCellType( 1 );

    cell11.setEncoding(( short )1);
    cell11.setCellType( 1 );
    cell21.setEncoding(( short )1);
    cell21.setCellType( 1 );
    cell31.setEncoding(( short )1);
    cell31.setCellType( 1 );

     // 定义表头的内容
     cell1.setCellValue( " 湖南" );
     cell2.setCellValue( " 广州" );
     cell3.setCellValue( " 上海" );

     cell11.setCellValue( " 湖南1" );
     cell21.setCellValue( " 广州2 " );
     cell31.setCellValue( " 上海3 " );

     for  ( int i = 0 ; i < 4 ; i ++ )   {
         // 定义数据从第二行开始       
         row  =  sheet.createRow(( short ) i  +   1 );
        cell1  =  row.createCell(( short )  0 );
        cell2  =  row.createCell(( short )  1 );
        cell3  =  row.createCell(( short )  2 );

        cell1.setEncoding(( short )1);
        cell1.setCellType( 1 );
        cell2.setEncoding(( short )1);
        cell2.setCellType( 1 );
        cell3.setEncoding(( short )1);
        cell3.setCellType( 1 );

         // 填充内容
 
        cell1.setCellValue( "长沙" );
        cell2.setCellValue( "广州" );
        cell3.setCellValue( "上海" );

    }
 String filename=application.getRealPath("/")+"test.xls";
 FileOutputStream fo=new FileOutputStream(filename);
        //设置该Excel是否可以读写 
        wb.write(fo);
 
        out.println("excel 文件生成,存放在"+filename);

 

 

 三.             全部代码:

<%@ page language="java"  contentType ="text/html;charset=gb2312" %>
 <%@ page import=
"java.util.*,org.apache.poi.hssf.usermodel.HSSFWorkbook,org.apache.poi.hssf.usermodel.HSSFSheet,org.apache.poi.hssf.usermodel.HSSFRow,org.apach

e.poi.hssf.usermodel.HSSFCell,java.io.* " %>
 <%

    //创建新的EXCEL 工作薄
    HSSFWorkbook wb  =   new  HSSFWorkbook();
    HSSFSheet sheet  =  wb.createSheet( " sheet1 " );
    HSSFSheet sheet1  =  wb.createSheet( " sheet2 " );

     // 以下以写表头
     // 表头为第一行  没一行输入时都要重新定义  row
     HSSFRow row  =  sheet.createRow(( short )0);
     HSSFRow row1  = sheet1.createRow(( short )0);

    HSSFCell cell1  =  row.createCell(( short )0);
    HSSFCell cell2  =  row.createCell(( short )1);
    HSSFCell cell3  =  row.createCell(( short )2);

    HSSFCell cell11  =  row1.createCell(( short )0);
    HSSFCell cell21  =  row1.createCell(( short )1);
    HSSFCell cell31  =  row1.createCell(( short )2);

    //设置每列的属性名
    cell1.setEncoding(( short )1);
    cell1.setCellType( 1 );
    cell2.setEncoding(( short )1);
    cell2.setCellType( 1 );
    cell3.setEncoding(( short )1);
    cell3.setCellType( 1 );

    cell11.setEncoding(( short )1);
    cell11.setCellType( 1 );
    cell21.setEncoding(( short )1);
    cell21.setCellType( 1 );
    cell31.setEncoding(( short )1);
    cell31.setCellType( 1 );

     // 定义表头的内容
     cell1.setCellValue( " 湖南" );
     cell2.setCellValue( " 广州" );
     cell3.setCellValue( " 上海" );

     cell11.setCellValue( " 湖南1" );
     cell21.setCellValue( " 广州2 " );
     cell31.setCellValue( " 上海3 " );

     for  ( int i = 0 ; i < 4 ; i ++ )   {
         // 定义数据从第二行开始       
         row  =  sheet.createRow(( short ) i  +   1 );
        cell1  =  row.createCell(( short )  0 );
        cell2  =  row.createCell(( short )  1 );
        cell3  =  row.createCell(( short )  2 );

        cell1.setEncoding(( short )1);
        cell1.setCellType( 1 );
        cell2.setEncoding(( short )1);
        cell2.setCellType( 1 );
        cell3.setEncoding(( short )1);
        cell3.setCellType( 1 );

         // 填充内容
 
        cell1.setCellValue( "长沙" );
        cell2.setCellValue( "广州" );
        cell3.setCellValue( "上海" );

    }
 String filename=application.getRealPath("/")+"test.xls";
 FileOutputStream fo=new FileOutputStream(filename);
        //设置该Excel是否可以读写 
        wb.write(fo);
 
        out.println("excel 文件生成,存放在"+filename);
   
 
 %>

  四.             结果截图

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值