使用java生成Excel文档

原创 2018年04月16日 14:04:06

最近研究了一下使用jxl包导出Excel文档的方法,分享一下,供有需要的朋友查阅。

首先需要引入 jxl.jar 文件,这是程序所依赖的jar包,请自行下载。

1. 定义单元格格式
首先需要定义几个单元格格式,包括字体格式,单元格样式等设置,上代码。

// 标题样式
WritableCellFormat head = new WritableCellFormat(new WritableFont(WritableFont.createFont("宋体"), 16, WritableFont.BOLD, false));//表头

上述代码设置了一个字体是“宋体 16号字 粗体 非斜体 ”的单元格样式,WritableFont方法的四个参数含义已经很明了了,不赘述。
此外,还可以对单元格设置其他样式。

head.setBorder(Border.ALL,BorderLineStyle.THIN,Colour.BLACK);

意思是,设置了一个“单元格四边框, 边框细线(一种边框样式,当然还有其他样式),黑色”的单元格边框。

另外还可以设置单元格的布局方式。

head.setBackground(Colour.GRAY_25);
head.setWrap(true);
head.setAlignment(Alignment.CENTRE);
head.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE);

上述代码设置了 “单元格颜色、单元格内文字自动换行、水平居中、垂直居中” 四种格式。


2.创建文档和sheet表单
设置完单元格样式后,开始创建文档。

FileOutputStream os = new FileOutputStream("c:/a.xls");//文件
WritableWorkbook wwb=Workbook.createWorkbook(os);//工作薄
WritableSheet ws =null;
ws = wwb.createSheet("我的sheet", 0);//工作表

上述代码分别完成了“创建文件、创建工作薄、创建工作表”操作。


3.添加单元格到sheet

接下来按照上述样式,把单元格添加到sheet中。

//标题 第二行
Label tLabel = new Label(4,1,"标题",title);
ws.addCell(tLabel);

//第3行 空行 合并行
tLabel = new Label(1,2,"");//创建label
ws.addCell(tLabel);//添加到工作簿中
ws.mergeCells(1,2,8,2);//合并单元格,从2行1列到2行8列(列从0开始数)

创建label,添加到工作簿中。

tLabel = new Label(1,3,"表头1",head);
ws.setColumnView(1,15);
ws.addCell(tLabel);

tLabel = new Label(2,3,"表头2",head);
ws.setColumnView(2,15);
ws.addCell(tLabel);
tLabel = new Label(3,3,"表头3",head);
ws.setColumnView(3,15);
ws.addCell(tLabel);
tLabel = new Label(4,3,"表头4",head);
ws.setColumnView(4,15);
ws.addCell(tLabel);
tLabel = new Label(5,3,"表头5",head);
ws.setColumnView(5,15);
ws.addCell(tLabel);
tLabel = new Label(6,3,"表头6",head);
ws.setColumnView(6,15);
ws.addCell(tLabel);
tLabel = new Label(7,3,"表头7",head);
ws.setColumnView(7,15);
ws.addCell(tLabel);
tLabel = new Label(8,3,"表头8",head);
ws.setColumnView(8,15);
ws.addCell(tLabel);

最后别忘了

wwb.write();
wwb.close();
os.close();

4.结果预览
这里写图片描述

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/H517604180/article/details/79958227

JAVA处理Excel文件---生成简单的Excel文件

在现实的办公中,我们常常会有这样一个要求:要求把报表直接用excel打开。在实习中有这样一个需求。根据所选择的资源查询用户所提供附件的全部信息并生成excel供下载。但是在查询的时候我们需要来检测用户...
  • u013310119
  • u013310119
  • 2016年04月14日 22:01
  • 5240

Java中用Apache POI生成excel和word文档

最近在做项目的过程中遇到了excel的数据导出和word的图文表报告的导出功能,最后决定用Apache POI来完成该项功能。本文就项目实现过程中的一些思路与代码与大家共享,同时,也作为自己的一个总结...
  • GISShiXiSheng
  • GISShiXiSheng
  • 2015年06月23日 20:50
  • 4573

Excel用vba自动生成word

Sub GenDocfromExcel() 'excel控制word,生成新文件,插入图片和文件名,保存 'office 2003, VBA工具/引用中要勾选Microsoft Word 11.0 ...
  • u012250252
  • u012250252
  • 2015年02月09日 10:49
  • 4468

[Java]简易使用JavaDoc生成说明文档

相信大家都已经看过了不少说明文档,例如Java API、Android API,它们无疑都是这样的:...
  • u011596810
  • u011596810
  • 2016年03月08日 14:48
  • 9551

Java生成excel文档

今天简单的实现了一下 Java生成excel文档,之前总是看到别人在用自己倒是没怎么关注package com.testcode.excel; import java.io.BufferedWrit...
  • wwz95
  • wwz95
  • 2018年04月03日 14:49
  • 8

把Excel数据填充word模板生成多份word文档

有些事情,你想记得的就会记得。有些事情,你想忘记的就会忘记,如果忘记不了,那就不要忘记了,因为忘记是不需要努力的。Model_Car.cs代码 public class Model_Car ...
  • WuLex
  • WuLex
  • 2017年05月04日 21:46
  • 1434

Java项目使用javadoc.exe生成JavaDoc文档

1.从Eclipse导出JavaDoc 在Eclipse里项目右键 export 选 java>javadoc。 下一步,选择Eclipse所使用的JDK版本下的javadoc.exe可执行文件。...
  • boonya
  • boonya
  • 2016年11月23日 15:32
  • 1107

读取TXT文件内容,生成Excel文件

需要用到jar文件:poi-3.0.1.jarpackage office; /** * 解析txt文件,输出到Excel文件 * @author JavaAlpha * @date...
  • JavaAlpha
  • JavaAlpha
  • 2011年07月29日 09:33
  • 5498

JAVA利用FreeMarker生成(导出)Word文档(Bug修改)

Bug一:把代码放到服务器上,能下载Word文件;但是,下载到服务器的C盘上了;  解决:  修改部分export.js代码:  function table01(){ var stime =...
  • u013456370
  • u013456370
  • 2017年05月08日 10:52
  • 382

java注释及自动生成文档

单行注释 多行注释(这里不再解释) 这个就相当于空调说明书 文档注释上面有两个星号,生成的文档默认以Html形式保存,可以生成说明文档 JavaDoc命令 从程序源代码中抽取文档注释形...
  • lx__angel
  • lx__angel
  • 2017年12月17日 13:47
  • 304
收藏助手
不良信息举报
您举报文章:使用java生成Excel文档
举报原因:
原因补充:

(最多只允许输入30个字)