三个重要对象
1.Workbook ---工作簿
2.Sheet ---Sheet页
3.Cell ---单元格
简单方法操作
1.读取或创建工作簿Workbook
Workbook book = Workbook.getWorkbook();//解析Excel时,获取工作簿
Workbook book = Workbook.createWorkbook();//导出Excel时,创建工作簿
2.读取或创建Sheet
(1) Sheet sheet = book.getSheet(i);//解析Excel时,获取Sheet页
Sheet sheet = book.getSheet(sheetName);
/**区别在于,一个是根据sheet下标获取,一个是根据sheet名称获取*/
(2) Sheet sheet = book.createSheet("第一个Sheet页",i);
/** 参数1:Sheet页名称;参数2:Sheet页下标 */
3.读取或创建单元格Cell
(1)/** 读取单元格内容 */
Cell cell = sheet.getCell(i,j);//i和j始于0
String content = cell.getContents();
(2)添加单元格
sheet.addCell(参数1,参数2,参数3,[参数4]);//该方法在下面详解
4.其他
(1)getType()用来获取单元格数据类型。
(2)同时有一个CellType类来预设Excel中的类型信息
(3)Cell类的子类:
- LacelCell
- NumberCell
- DateCell
详解创建工作簿
/**参数为输出流时,Excel直接写出到输出流;参数为File时,Excel写出到本地服务器*/
OutputStream os = new HttpServletResponse().getOutputStream();
WritableWorkbook book = Workbook.createWorkbook(os);
//创建Sheet页
WritableSheet sheet = book.createSheet("sheet1",0);
//设置字体样式
WritableFont wf = new WritableFont(WritableFont.TIMES,18,WritableFont.BOLD,true);
//设置单元格样式
WritableCellFormat wcf = new WritableCellFormat(wf);
//可添加第四个参数,控制样式
sheet.addCell(new Label(0,0,"this is a label!",wcf));
附加
1.带格式的Number对象,举一反三,Date对象也一样
NumberFormat nf = new NumberFormat("#.##");
WritableCellFormat wcf = new WritableCellFormat(nf);
sheet.addCell(new Label(i,j,"3.1415926",wcf));
2.通过调用WritableCellFormat的诸多set方法,可对单元格样式进行设置。
WritableCellFormat wc = new WritableCellFormat();
wc.setAlignment(Alignment.CENTRE); // 设置居中
wc.setBorder(Border.ALL, BorderLineStyle.THIN); // 设置边框线
wc.setBackground(jxl.format.Colour.RED); // 设置单元格的背景颜色
label = new Label(1, 5, "字体", wc);
sheet.addCell(label);
到目前为止,就可以通过java简单的读取或者导出一个Excel表格了