zoukankan      html  css  js  c++  java
  • java Excel的导入导出学习(1)

    今天学习了java的Jxl API简单做了下导入导出功能,做起来还是很简单的,下面做了一个导入导出的例子,可以看看,代码如下:

     JxlTest 类:


    package jxl;

    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.util.ArrayList;
    import java.util.List;

    import bo.CreateBD;

    import jxl.read.biff.BiffException;
    import jxl.write.Label;
    import jxl.write.WritableSheet;
    import jxl.write.WritableWorkbook;
    import jxl.write.WriteException;
    import jxl.write.biff.RowsExceededException;
    import pojo.Student;
    /**
     *
      *@author: zhangjp
      *@功能:jxlTest
      *@date:Mar 29, 2010 2:24:19 PM
         *
     */
    public class JxlTest {
     
        public List<Student> getExcelData(){
         List <Student> list = new  ArrayList<Student>();
         File scoureFile = new File("d:\javaTest.xls");
         InputStream is =null;
          try {
       is = new FileInputStream(scoureFile);
       jxl.Workbook rwb = Workbook.getWorkbook(is);
       Sheet sheet = rwb.getSheet(0);
       for(int i=0;i<sheet.getRows();i++){
            Student s = new Student();
            s.setOid(new Long(sheet.getCell(0, i).getContents()));
            s.setName(sheet.getCell(1,i).getContents());
            s.setSex(Integer.parseInt(sheet.getCell(2, i).getContents()));
            s.setAge(Integer.parseInt(sheet.getCell(3, i).getContents()));
            s.setHobby(sheet.getCell(4, i).getContents());
            list.add(s);
        
       }
     
       
      } catch (FileNotFoundException e) {
       // TODO Auto-generated catch block
       e.printStackTrace();
      } catch (BiffException e) {
       // TODO Auto-generated catch block
       e.printStackTrace();
      } catch (IOException e) {
       // TODO Auto-generated catch block
       e.printStackTrace();
      }finally{
       try {
        is.close();
       } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
       }
      }
           
         return list;
         
        }
     
        public void createExcel(List<Student> list){
           File targetFile = new File("d:\javaCreateExcel.xls");
              try {
      
        OutputStream os = new FileOutputStream(targetFile);
        WritableWorkbook wwb = Workbook.createWorkbook(os);
        WritableSheet sheet = wwb.createSheet("123", 0);
        for(int i=0;i<list.size();i++){
         Label label = new Label(0,i,String.valueOf(list.get(i).getOid()));
         sheet.addCell(label);
         Label label1 =new Label(1,i,list.get(i).getName());
         sheet.addCell(label1);
         Label label2 =new Label(2,i,String.valueOf(list.get(i).getSex()));
         sheet.addCell(label2);
         Label label3 =new Label(3,i,String.valueOf(list.get(i).getAge()));
         sheet.addCell(label3);
         Label label4 =new Label(4,i,list.get(i).getHobby());
         sheet.addCell(label4);
        }
        
        wwb.write();
        wwb.close();
        os.close();
      } catch (RowsExceededException e) {
       // TODO Auto-generated catch block
       e.printStackTrace();
      } catch (WriteException e) {
       // TODO Auto-generated catch block
       e.printStackTrace();
      
      } catch (FileNotFoundException e) {
       // TODO Auto-generated catch block
       e.printStackTrace();
      } catch (IOException e) {
       // TODO Auto-generated catch block
       e.printStackTrace();
      }

        }
     public static void main(String[] args) {
      JxlTest  jsl = new  JxlTest();
      List <Student> list = jsl.getExcelData();
      for(Student s :list){
       System.out.println(s);
      }
      List <Student>l = CreateBD.getData();
      jsl.createExcel(l);
     }

    }
     

    CreateDB类:

    package bo;

    import java.util.ArrayList;
    import java.util.List;

    import pojo.Student;

    public class CreateBD {
     public static List<Student> getData(){
      List <Student>list = new ArrayList<Student>();
      Student s1=new Student();
      s1.setOid(1);
      s1.setName("段誉");
      s1.setAge(11);
      s1.setSex(1);
      s1.setHobby("titi");
      list.add(s1);
      Student s2=new Student();
      s2.setOid(2);
      s2.setName("乔峰");
      s2.setAge(28);
      s2.setSex(1);
      s2.setHobby("降龙十八掌");
      list.add(s2);
      return list;
     }

    }

  • 相关阅读:
    C# 观察者模式(Observer)
    CXGRID设置Selstart和SelLength
    Delphi 中相对路径与绝对路径、系统环境变量等相关函数说明
    用Delphi创建一个空的Access数据库
    非COM环境下的接口编程
    VCLZIP样例
    delphi 文件CRC32校验
    delphi中无类型文件读写
    Delphi调用MSSQL存储过程返回的多个数据集
    CXGRID,定位并高亮
  • 原文地址:https://www.cnblogs.com/alaricblog/p/3278277.html
Copyright © 2011-2022 走看看