package com.jxlexam;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.text.SimpleDateFormat;
import java.util.Date;
import jxl.Workbook;
import jxl.format.Alignment;
import jxl.format.Border;
import jxl.format.BorderLineStyle;
import jxl.format.CellFormat;
import jxl.write.Label;
import jxl.write.WritableCellFormat;
import jxl.write.WritableFont;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
public class JXLExam {
/**
* @param args
*/
public static void main(String[] args) {
//创建EXCEL工作薄(workbook)中工作表(sheet)的标题
@SuppressWarnings("unused")
String[] titles = {"编号","产品名称","产品价格","产品数量","生产日期","产地","是否出口"};
try{
//取得开始时间
@SuppressWarnings("unused")
long startTime = System.currentTimeMillis();
//设置Excel工作薄的输出路径
@SuppressWarnings("unused")
String path = "d:"+File.separator+"test.xls";
//创建Excel工作薄
@SuppressWarnings("unused")
WritableWorkbook wwb ;
//创建一个新的jxl文件
OutputStream os = new FileOutputStream(path);
wwb = Workbook.createWorkbook(os);
//添加第一个工作表(sheet)并设置其名字
@SuppressWarnings("unused")
WritableSheet sheet = wwb.createSheet("产品清单", 0);
//
Label label ;
for(int i=0;i<titles.length;i++){
//label(x,y,z)x==第几列,y==第几行,z==表格内容
label = new Label(i,0,titles[i]);
// 将定义好的单元格添加到工作表中
sheet.addCell(label);
}
//添加数据
//保存数字,需要使用jxl.wirte.number
//填充产品编号
jxl.write.Number number = new jxl.write.Number(0,1,1000001);
sheet.addCell(number);
//填充产品名称
label = new Label(1,1,"HP");
sheet.addCell(label);
//填充产品价格
//定义产品价格的显示格式
jxl.write.NumberFormat nf = new jxl.write.NumberFormat("#.##");
jxl.write.WritableCellFormat wcf = new jxl.write.WritableCellFormat(nf);
jxl.write.Number price = new jxl.write.Number(2,1,4600.00,wcf);
sheet.addCell(price);
//填充产品数量
jxl.write.Number numb = new jxl.write.Number(3,1,200);
sheet.addCell(numb);
//填充产品日期
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd");
String date = sdf.format(new Date());
label = new Label(4,1,date);
sheet.addCell(label);
// 填充产地
label = new Label(5,1,"陕西西安");
sheet.addCell(label);
/*
* 显示布尔值
* */
jxl.write.Boolean bool = new jxl.write.Boolean(6,1,true);
sheet.addCell(bool);
//
sheet.mergeCells(0, 3, 2, 3);
label =new Label(0,3,"合并了三个单元格");
/*
*
* 定义公共字体格式
* 通过获取一个字体的样式来作为模板
* 首先通过web.getSheet(0)获得第一个sheet
* 然后取得第一个sheet的第二列,第一行也就是"产品名称"的字体
* */
CellFormat cf = wwb.getSheet(0).getCell(1, 0).getCellFormat();
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);
// 设置字体
jxl.write.WritableFont wfont = new jxl.write.WritableFont(WritableFont.createFont("隶书"),20);
WritableCellFormat font = new WritableCellFormat(wfont);
label = new Label(2,6,"隶书",font);
sheet.addCell(label);
//写入数据
wwb.write();
wwb.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
jxl的使用
最新推荐文章于 2021-03-19 19:36:52 发布