首页 | 联系我们 | 叶凡网络官方QQ群:323842844
游客,欢迎您! 请登录 免费注册 忘记密码
您所在的位置:首页 > 开发语言 > Java开发 > 正文

导出到Excel表格中实例

作者:cocomyyz 来源: 日期:2013-07-25 02:07:36 人气:3 加入收藏 评论:0 标签:java excel

//对象传输类:User.java


package com.brj.exportexcel;

public class User {
private int id;
private String userName;
private String password;

public int getId() {
  return id;
}

public void setId(int id) {
  this.id = id;
}

public String getUserName() {
  return userName;
}

public void setUserName(String userName) {
  this.userName = userName;
}

public String getPassword() {
  return password;
}

public void setPassword(String password) {
  this.password = password;
}

}


//模拟数据提供类:UsersProvider.java


package com.brj.exportexcel;

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

public class UsersProvider {

public static List<User> getUsers() {
  List<User> list = new ArrayList<User>();
  User user = null;
  for (int i = 0; i < 20; i++) {
   user = new User();
   user.setId(i);
   user.setUserName("brj" + i);
   user.setPassword("liming" + i);
   list.add(user);
  }
  return list;
}

}


ExcelExporter.java


package com.brj.exportexcel;

import java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;

import jxl.Workbook;
import jxl.write.Label;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;
import jxl.write.biff.RowsExceededException;

/**
* 导出到Excel表格中实例
*
* @author brj
* @time 2008-09-19
*
*/
public class ExcelExporter {

/**
* @param args
*/
public static void main(String[] args) {
  try {
   // 用当前时间作为文件名
   SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd-HH-mm-ss");
   String currentTime = sf.format(new Date());
   System.out.println("FileName: " + currentTime);

   // 导出目的似乎 [ d: ] 盘
   String driverName = "d:/";
   String fileName = driverName + currentTime + ".xls";

   // 打开文件
   WritableWorkbook book = Workbook.createWorkbook(new File(fileName));

   // 生成名为“SheetOne”的工作表,参数0表示这是第一个sheet
   WritableSheet sheet = book.createSheet("SheetOne", 0);

   // 在Label对象的构造子中指名单元格位置是第一列第一行(0,0),以及单元格内容
   Label userIdLbTitle = new Label(0, 0, "UserId");
   Label userNameLbTitle = new Label(1, 0, "UserName");
   Label passwordLbTitle = new Label(2, 0, "Password");

   // 将定义好的单元格添加到工作表中
   sheet.addCell(userIdLbTitle);
   sheet.addCell(userNameLbTitle);
   sheet.addCell(passwordLbTitle);

   // 得到需要导出的数据(这里我只是模拟数据,实际要从数据库中得到)
   List<User> list = UsersProvider.getUsers();

   // 将数据插入到相应的单元格中
   for (int i = 0; i < list.size(); i++) {
    Label userId = new Label(0, i + 1, list.get(i).getId() + "");
    Label userName = new Label(1, i + 1, list.get(i).getUserName());
    Label password = new Label(2, i + 1, list.get(i).getPassword());
    sheet.addCell(userId);
    sheet.addCell(userName);
    sheet.addCell(password);
   }

   // 执行写入和关闭文件
   book.write();
   book.close();
   System.out.println("文件导出成功 . 请到 " + driverName + " 盘 去找文件.");
  } catch (RowsExceededException e) {
   e.printStackTrace();
  } catch (WriteException e) {
   e.printStackTrace();
  } catch (IOException e) {
   e.printStackTrace();
  }

}

}


本文网址:http://www.mingyangnet.com/html/java/120.html
读完这篇文章后,您心情如何?
  • 0
  • 0
  • 0
  • 0
  • 0
  • 0
  • 0
  • 0
上一篇: JDBC链接大全
更多>>网友评论
发表评论
编辑推荐
  • 没有资料