寫excel(二)
String path = getServletContext().getRealPath("/excel");
// Method1: 創建可寫入excel的工作簿
WritableWorkbook ww = Workbook.createWorkbook(new File(path+"/abc.xls"));
// Method2: 直接寫入到工作流
// OutputStream os = new FileOutputStream("abc.xls");
// WritableWorkbook ww = Workbook.createWorkbook(os);
// 創建Excel工作表
WritableSheet ws = ww.createSheet("Test Sheet 1", 0);
// 添加Label對象
try {
//1. 添加Label對象
Label label0 = new Label(0,0,"This is Label cell");
ws.addCell(label0);
// 創建一個Times類型,18號,粗體,斜字體
WritableFont wf = new WritableFont(WritableFont.TIMES,18,WritableFont.BOLD,true);
WritableCellFormat wcf = new WritableCellFormat(wf);
Label label1 = new Label(0,1,"This is lable cell font format",wcf);
ws.addCell(label1);
// 添加帶有字體顏色 Formatting 的對象
WritableFont wf2 = new WritableFont(WritableFont.ARIAL, 10,WritableFont.NO_BOLD, false,
UnderlineStyle.NO_UNDERLINE, jxl.format.Colour.RED);
WritableCellFormat wcf2 = new WritableCellFormat(wf2);
Label label2 = new jxl.write.Label(1, 0, "This is a Label Cell", wcf2);
ws.addCell(label2);
//2. 添加 Number 對象
jxl.write.Number labelN = new jxl.write.Number(0, 1, 3.1415926);
ws.addCell(labelN);
// 添加帶有 formatting 的 Number 對象
jxl.write.NumberFormat nf = new jxl.write.NumberFormat("#.##");
jxl.write.WritableCellFormat wcfN = new jxl.write.WritableCellFormat(nf);
jxl.write.Number labelNF = new jxl.write.Number(1, 1, 3.1415926, wcfN);
ws.addCell(labelNF);
//3. 添加 Boolean 對象
jxl.write.Boolean labelB = new jxl.write.Boolean(0, 2, false);
ws.addCell(labelB);
//4. 添加 DateTime 對象
jxl.write.DateTime labelDT = new jxl.write.DateTime(0, 3, new java.util.Date());
ws.addCell(labelDT);
// 添加帶有 formatting 的 DateFormat 對象
jxl.write.DateFormat df = new jxl.write.DateFormat("dd MM yyyy hh:mm:ss");
jxl.write.WritableCellFormat wcfDF = new jxl.write.WritableCellFormat(df);
jxl.write.DateTime labelDTF = new jxl.write.DateTime(1, 3, new java.util.Date(),
wcfDF);
ws.addCell(labelDTF);
} catch (RowsExceededException e) {
e.printStackTrace();
} catch (WriteException e) {
e.printStackTrace();
} finally{
if(ww != null){
try {
ww.close();
} catch (WriteException e) {
e.printStackTrace();
}
}
}
// Method1: 創建可寫入excel的工作簿
WritableWorkbook ww = Workbook.createWorkbook(new File(path+"/abc.xls"));
// Method2: 直接寫入到工作流
// OutputStream os = new FileOutputStream("abc.xls");
// WritableWorkbook ww = Workbook.createWorkbook(os);
// 創建Excel工作表
WritableSheet ws = ww.createSheet("Test Sheet 1", 0);
// 添加Label對象
try {
//1. 添加Label對象
Label label0 = new Label(0,0,"This is Label cell");
ws.addCell(label0);
// 創建一個Times類型,18號,粗體,斜字體
WritableFont wf = new WritableFont(WritableFont.TIMES,18,WritableFont.BOLD,true);
WritableCellFormat wcf = new WritableCellFormat(wf);
Label label1 = new Label(0,1,"This is lable cell font format",wcf);
ws.addCell(label1);
// 添加帶有字體顏色 Formatting 的對象
WritableFont wf2 = new WritableFont(WritableFont.ARIAL, 10,WritableFont.NO_BOLD, false,
UnderlineStyle.NO_UNDERLINE, jxl.format.Colour.RED);
WritableCellFormat wcf2 = new WritableCellFormat(wf2);
Label label2 = new jxl.write.Label(1, 0, "This is a Label Cell", wcf2);
ws.addCell(label2);
//2. 添加 Number 對象
jxl.write.Number labelN = new jxl.write.Number(0, 1, 3.1415926);
ws.addCell(labelN);
// 添加帶有 formatting 的 Number 對象
jxl.write.NumberFormat nf = new jxl.write.NumberFormat("#.##");
jxl.write.WritableCellFormat wcfN = new jxl.write.WritableCellFormat(nf);
jxl.write.Number labelNF = new jxl.write.Number(1, 1, 3.1415926, wcfN);
ws.addCell(labelNF);
//3. 添加 Boolean 對象
jxl.write.Boolean labelB = new jxl.write.Boolean(0, 2, false);
ws.addCell(labelB);
//4. 添加 DateTime 對象
jxl.write.DateTime labelDT = new jxl.write.DateTime(0, 3, new java.util.Date());
ws.addCell(labelDT);
// 添加帶有 formatting 的 DateFormat 對象
jxl.write.DateFormat df = new jxl.write.DateFormat("dd MM yyyy hh:mm:ss");
jxl.write.WritableCellFormat wcfDF = new jxl.write.WritableCellFormat(df);
jxl.write.DateTime labelDTF = new jxl.write.DateTime(1, 3, new java.util.Date(),
wcfDF);
ws.addCell(labelDTF);
} catch (RowsExceededException e) {
e.printStackTrace();
} catch (WriteException e) {
e.printStackTrace();
} finally{
if(ww != null){
try {
ww.close();
} catch (WriteException e) {
e.printStackTrace();
}
}
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.