EXCEL 读取 写入文件

本文介绍了一个Java程序示例,演示了如何使用JExcelAPI读取和写入Excel文件。读取部分展示了如何逐个单元格读取数据,并批量插入数据库;写入部分则展示了如何创建并填充一个简单的Excel表格。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

//读取

public  void readInexcel(){

Workbook book;
try {
book = Workbook.getWorkbook(new File("d:/TEST.xls"));
List<String>list=new ArrayList<String>();
        // 获得第一个工作表对象
        Sheet st = book.getSheet(0);
        // 得到单元格
//        System.out.println(st.getColumns());
//        System.out.println(st.getRows());
        for (int i=0;i<st.getColumns();i++){
        for (int j=0;j<st.getRows();j++){
        Cell c1 = st.getCell(i,j);
        String name = c1.getContents().replace(" ", "");
        if(name!=null&&!name.equals("")){
        list.add(name);
        }
        if(list.size()>=2000){
        userService.insertNickName(list);
        list.clear();
        }
        }
        }
book.close();
if(list!=null&&list.size()!=0){
userService.insertNickName(list);
list=null;
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();

}


//写入

public static void writeExcel(String fileName){    

          WritableWorkbook wwb = null;    
         try {    
             //首先要使用Workbook类的工厂方法创建一个可写入的工作薄(Workbook)对象    
              wwb = Workbook.createWorkbook(new File(fileName));    
          } catch (IOException e) {    
             e.printStackTrace();    
         }    
        if(wwb!=null){    
            //创建一个可写入的工作表    
            //Workbook的createSheet方法有两个参数,第一个是工作表的名称,第二个是工作表在工作薄中的位置    
             WritableSheet ws = wwb.createSheet("sheet1", 0);    
                
            //下面开始添加单元格    
            for(int i=0;i<10;i++){    
                for(int j=0;j<5;j++){    
                    //这里需要注意的是,在Excel中,第一个参数表示列,第二个表示行    
                     Label labelC = new Label(j, i, "这是第"+(i+1)+"行,第"+(j+1)+"列");    
                    try {    
                        //将生成的单元格添加到工作表中    
                         ws.addCell(labelC);    
                     } catch (RowsExceededException e) {    
                         e.printStackTrace();    
                     } catch (WriteException e) {    
                         e.printStackTrace();    
                     }    
   
                 }    
             }    
   
            try {    
                //从内存中写入文件中    
                 wwb.write();    
                //关闭资源,释放内存    
                 wwb.close();    
             } catch (IOException e) {    
                 e.printStackTrace();    
             } catch (WriteException e) {    
                 e.printStackTrace();    
             }    
         }    
     } 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值