- dylan_cherie
- 等级:
- 性别:
- 文章: 38
- 积分: 298
|
java 代码
java 代码
- import jxl.Workbook;
- import jxl.write.Label;
- import jxl.write.WritableSheet;
- import jxl.write.WritableWorkbook;
- import jxl.write.WriteException;
- import jxl.write.biff.RowsExceededException;
jxl 包
java 代码
- try {
- SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
- String fileName = "d:\\" + sdf.format(new Date()) + ".xls";
-
- WritableWorkbook book = Workbook.createWorkbook(new File(fileName));
-
- // -- 第一个参数是Sheet名,第二个参数是Sheet下标
- // -- 下标是整数,只起标识作用,建立的时候会以create顺序建立,本例生成的EXCEL文件第一个Sheet是sheet1
- WritableSheet sheet1 = book.createSheet("第一页",100000);
- WritableSheet sheet2 = book.createSheet("第二页",4);
-
- // -- 参数:先定位列,再定位行,再表格内容
- Label labTitle1 = new Label(0,0,"姓名");
- Label labTitle2 = new Label(1,0,"性别");
- Label labTitle3 = new Label(2,0,"移动电话");
- Label labTitle4 = new Label(3,0,"固定电话");
- Label labTitle5 = new Label(4,0,"家庭电话");
-
- sheet2.addCell(labTitle1);
- sheet2.addCell(labTitle2);
- sheet2.addCell(labTitle3);
- sheet2.addCell(labTitle4);
- sheet2.addCell(labTitle5);
-
- for(int i=1;i<3;i++) {
- Label lab1 = new Label(0,i,"老师");
- Label lab2 = new Label(1,i,"老师2");
- sheet2.addCell(lab1);
- sheet2.addCell(lab2);
- }
- book.write();
- book.close();
- } catch (IOException e) {
- e.printStackTrace();
- } catch (RowsExceededException e) {
- e.printStackTrace();
- } catch (WriteException e) {
- e.printStackTrace();
- }
姓名 |
性别 |
移动电话 |
固定电话 |
家庭电话 |
老师 |
老师2 |
|
|
|
老师 |
老师2 |
|
|
|
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
|
返回顶楼 |
|
|
- dylan_cherie
- 等级:
- 性别:
- 文章: 38
- 积分: 298
|
那个for怎么又有问题了。。。。
for(int i=1;i<3;i++) {
|
返回顶楼 |
|
|
- Allen
- 等级:
- 性别:
- 文章: 414
- 积分: 582
- 来自: 昆明
|
配上实际效果的截图估计更能说明问题(也更能吸引注意力)……
在JavaEye的rich editer下面写好的代码不能够修改确实是一个令人烦恼的问题呢!
|
返回顶楼 |
|
|
- ITeye管理员
- 等级: 管理员
- 性别:
- 文章: 808
- 积分: 623
- 来自: 北京
|
Allen 写道 配上实际效果的截图估计更能说明问题(也更能吸引注意力)……
在JavaEye的rich editer下面写好的代码不能够修改确实是一个令人烦恼的问题呢!
最好用BBCODE来发表code
|
返回顶楼 |
|
|
- magic_seek
- 等级:
- 性别:
- 文章: 139
- 积分: 216
|
关于Excel的处理,其实我觉得ExcelUtils还不错,这个组件好像知名度不高,发现在JavaEye2005年就有人在推广了,不过关注的人比较少,觉得挺可惜的。
因我一直在使用这个工具,既然这个帖子也是关于如何写Excel的所以就在这个帖子里简单介绍一下。
以下是我的调用ExcelUitls的代码(Groovy脚本):
java 代码
- import java.io.FileInputStream;
- import net.sf.excelutils.ExcelUtils;
-
- String templateFile = self.metadata.project.path + "/template/" + self.value;
- def response = ctxs.httpContext.response;
- FileInputStream fin = new FileInputStream(templateFile);
- try{
- response.reset();
- response.setContentType("application/vnd.ms-excel");
- response.setHeader("Content-Disposition", "attachment; filename=\"" + System.currentTimeMillis() + ".xls\"");
- ExcelUtils.export(fin, binding.getVariables(), response.getOutputStream());
- }finally{
- fin.close();
- }
-
- return;
说明:
ExcelUtils是工具接口,export方法用来生成Excel,上面调用时export方法的参数依次是:InputStream, Ojbect, OutputStream。
binding.getVariables()的返回值是Map。
下面用以一个实际的例子来说明:
我们用Groovy脚本构造测试数据
java 代码
- title="测试";
- dateString="2007-03-01";
- idName="测试";
-
- datas = [
- ["id":"1", "name":"名称1", "timeRate":"98", "payRate":"96"],
- ["id":"2", "name":"名称2", "timeRage":"93", "payRate":"23"]
- ];
-
- return "success";
附件查看Excel模版和输出结果。
关于ExcelUtils可以参看http://excelutils.sourceforge.net.
|
返回顶楼 |
|
|