在实际开发中企业办公系统都会涉及到一个打印报表的功能,也许你的需求就是把web前端展示的员工信息以Excel表格形式打印出来 ,那么具体怎么操作下面我来实现一下
首先我们使用的是 java的jxl技术 我们需要导入jxl的jar包 如图这个jar包可以从网上下载,导入了jar包之后 我们就来认识一下java的一些抽象类以及接口 首先来认识一下WritableWorkbook抽象类 这个类位于jxl包下的 可读写的工作薄类
在认识一个抽象类Workbook抽象类此类工作薄类有个方法ceateWorkbook(参数可以是File也可以是OutputStream对象) 此方法返回一个WritableWorkbook 对象 具体的代码操作是 WritableWorkbook book=Workbook.createWorkbook(new File("D:\\index.xls"));
//此代码是在D盘下创建一个名字叫index的Excel表格
那么我们还要Excel还没有完成还需要创建表格WriSheet 类 WritableWorkbook类有book.createSheet("详细列表", 0);方法 参数1是当前的表格的名称 参数二是当前表格位于第几页 那么我们已经创建了表格 接下来就是单元格了Label 类 Label la = new Label("列","行","内容"); 参数都已经写的很详细了 可以创建很多单元格然后给表格sheet.addCell(la);表格的addCell()方法就是添加每一个单元格的 如果完成了上面的几个操作就可以创建了一个Excel表格了具体案例如下
WritableWorkbook book = null; // 创建 工作薄
try {
book = Workbook.createWorkbook(new File("D:\\index.xls"));
} catch (IOException e) {
e.printStackTrace();}
// 创建表格
WritableSheet sheet = book.createSheet("详细列表", 0);
//需要写入的数据
String[] title = { "姓名", "地址", "年龄", "身份证号", "性别", "电话", "邮箱", "描述",
"年级 班级" };
for (int i = 0; i < title.length; i++) {
// 创建单元格
Label la = new Label(i, 0, title[i]);
try {// 添加单元格 到 表格
sheet.addCell(la);
} catch (Exception ex) {
ex.printStackTrace();}
}
try {
book.write();
book.close();
System.out.println("程序结束");
} catch (Exception e) {
e.printStackTrace();
}