/**
* 导出Excel
* */
public void creatExcel(){
// 准备设置excel工作表的标题
String[] title = {"学号","姓名","性别","专业","班级","电话","e-mail","毕业时间","状态"};
Teacher teacher = getSessionAttr("user");
String tno = teacher.getStr("tno");
try {
// 获得开始时间
long start = System.currentTimeMillis();
// 输出的excel的路径
String filePath = C.basePath+"\\excel"+"\\"+tno; //+"\\Excel.xls"
File file = new File(filePath);
if (!file.exists()) {
file.mkdir();
}
filePath=filePath+"\\Excel.xls";
// 创建Excel工作薄
WritableWorkbook wwb;
// 新建立一个jxl文件,即在e盘下生成testJXL.xls
OutputStream os = new FileOutputStream(filePath);
wwb=Workbook.createWorkbook(os);
// 添加第一个工作表并设置第一个Sheet的名字
WritableSheet sheet = wwb.createSheet("学生清单", 0);
Label label;
for(int i=0;i<title.length;i++){
// Label(x,y,z) 代表单元格的第x+1列,第y+1行, 内容z
// 在Label对象的子对象中指明单元格的位置和内容
label = new Label(i,0,title[i]);
// 将定义好的单元格添加到工作表中
sheet.addCell(label);
}
List<Student> list = Student.dao.getStudentListByTeacher(tno);
for(int i=0;i<list.size();i++){
Label sno = new Label(0,i+1,list.get(i).getStr("sno"));
sheet.addCell(sno);
Label name = new Label(1,i+1,list.get(i).getStr("name"));
sheet.addCell(name);
Label sex = new Label(2,i+1,list.get(i).getStr("gender"));
sheet.addCell(sex);
Label major = new Label(3,i+1,list.get(i).getStr("major"));
sheet.addCell(major);
Label classes = new Label(4,i+1,list.get(i).getStr("s_class"));
sheet.addCell(classes);
Label tel = new Label(5,i+1,list.get(i).getStr("tel"));
sheet.addCell(tel);
Label email = new Label(6,i+1,list.get(i).getStr("email"));
sheet.addCell(email);
Label gradution = new Label(7,i+1,list.get(i).getStr("graduation_time"));
sheet.addCell(gradution);
Number status = new Number(8,i+1,list.get(i).getInt("status"));
sheet.addCell(status);
}
// 写入数据
wwb.write();
// 关闭文件
wwb.close();
long end = System.currentTimeMillis();
System.out.println("----完成操作----");
} catch (Exception e) {
System.out.println("---出现异常---");
e.printStackTrace();
}
String s = "/excel/" + tno +"/Excel.xls";
renderFile(s);
}
引入jxl.jar