📄 outputexcel.java
字号:
/* 创建日期:Dec 27, 2006
* 作 者:朱 闰
* 公 司:安徽通途信息技术有限公司
*/
package com.tongtu.comm.loadData;
import java.io.File;
import java.io.IOException;
import java.io.OutputStream;
import java.util.ArrayList;
import jxl.Sheet;
import jxl.Workbook;
import jxl.format.UnderlineStyle;
import jxl.read.biff.BiffException;
import jxl.write.Label;
import jxl.write.WritableCellFormat;
import jxl.write.WritableFont;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;
import jxl.write.biff.RowsExceededException;
public class OutputExcel {
public void outPutData() throws IOException, WriteException{
File file = new File("d:\\test.xls");
WritableWorkbook wwb = Workbook.createWorkbook(file);
WritableSheet ws = wwb.createSheet("Sheet1", 0);
ws.setColumnView(1,20); // 设置列宽
ws.setColumnView(2,20); // 设置列宽
ws.setColumnView(3,15); // 设置列宽
ws.setColumnView(4,15); // 设置列宽
ws.setColumnView(5,15); // 设置列宽
ws.setColumnView(6,30); // 设置列宽
WritableFont wfc = new jxl.write.WritableFont(WritableFont.createFont("宋体"), 12, WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE, jxl.format.Colour.BLACK);
WritableFont headwfc = new jxl.write.WritableFont(WritableFont.createFont("宋体"), 20, WritableFont.BOLD, false, UnderlineStyle.NO_UNDERLINE, jxl.format.Colour.BLACK);
ws.setPageSetup(jxl.format.PageOrientation.LANDSCAPE,jxl.format.PaperSize.A3,2000,2000);
WritableCellFormat wcfFC = new jxl.write.WritableCellFormat(wfc);
WritableCellFormat headFc = new jxl.write.WritableCellFormat(headwfc);
wcfFC.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.getStyle(1));
wcfFC.setAlignment(jxl.format.Alignment.CENTRE);
//wcfFC.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.getStyle(1));
headFc.setAlignment(jxl.format.Alignment.CENTRE);
ws.mergeCells(0,2,0,3); //所在省区
ws.mergeCells(1,2,2,2); //项目所在地
ws.mergeCells(3,2,5,2); //项目性质
ws.mergeCells(8,2,13,2); //建设规模及标准
ws.mergeCells(14,2,15,2); //建设年限
ws.mergeCells(19,2,24,2); //建设计划
ws.mergeCells(6,2,6,3); //项目名称
ws.mergeCells(7,2,7,3); //建设性质
ws.mergeCells(16,2,16,3); //总投资
ws.mergeCells(17,2,17,3); //中央投资
ws.mergeCells(18,2,18,3); //到上年底累计完成投资额
ws.mergeCells(25,2,25,3); //项目建成后通的乡镇名称
ws.mergeCells(26,2,26,3); //项目建成后通的建制村名称
ws.mergeCells(27,2,27,3); //前期工作进展情况
ws.mergeCells(28,2,28,3); //备注
ws.mergeCells(0,0, 30, 1);
wcfFC.setWrap(true);
// wcfFC.setBackground(jxl.format.Colour.BLUE);
ArrayList row = new ArrayList(); //表格头行
ArrayList tableContent = new ArrayList();
row.add("所在省区");
row.add("项目所在地区名");
row.add("");
row.add("项目性质");
row.add("");
row.add("");
row.add("项目名称");
row.add("建设性质");
row.add("建设规模及标准(公里/延米)");
row.add("");
row.add("");
row.add("");
row.add("");
row.add("");
row.add("建设年限");
row.add("");
row.add("总投资");
row.add("中央投资");
row.add("到上年底已累计完成投资(万元)");
row.add("2006年建设计划(万元)");
row.add("");
row.add("");
row.add("");
row.add("");
row.add("");
row.add("项目建成后通沥清水泥的乡镇名称");
row.add("项目建成后通沥清水泥的建制村名称");
row.add("前期工作进展情况");
row.add("备注");
tableContent.add(row);
row = new ArrayList();
row.add("安徽省");
row.add("地市");
row.add("县区");
row.add("国家贫困县");
row.add("少数民族地区");
row.add("革命老区");
row.add("");
row.add("");
row.add("合计");
row.add("二级");
row.add("三级");
row.add("四级");
row.add("等外路");
row.add("桥梁");
row.add("开工年");
row.add("完工年");
row.add("");
row.add("");
row.add("");
row.add("合计");
row.add("中央投资国购税");
row.add("中央国债");
row.add("省市区自筹");
row.add("国内贷款");
row.add("主要建设内容");
row.add("");
row.add("");
row.add("");
row.add("");
tableContent.add(row);
try {
Label labelC1 = new jxl.write.Label(0, 0, (String) "2006年农村公路改造工程实施计划表", headFc);
ws.addCell(labelC1);
for (int i = 0; i < tableContent.size(); i++) {
ArrayList row1 = (ArrayList) tableContent.get(i);
for (int j = 0; j < row1.size(); j++) {
Label labelC = new jxl.write.Label(j, i+4, (String) row1.get(j), wcfFC);
ws.addCell(labelC);
}
}
// 写入Exel工作表
// ws.mergeCells(1,2,2,2);
//ws.mergeCells(0,0,0,1); //所在省区
wwb.write();
// 关闭Excel工作薄对象
wwb.close();
} catch (Exception e) {
e.printStackTrace();
}
}
public void getData() throws IOException{
File file = new File("d:\\test.xls");
Workbook wwb = null ;
try {
wwb = Workbook.getWorkbook(file);
} catch (BiffException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
// WritableWorkbook wwb = Workbook.createWorkbook(file);
Sheet ws = wwb.getSheet("Sheet1");
WritableFont wfc = new jxl.write.WritableFont(WritableFont.createFont("宋体"), 12, WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE, jxl.format.Colour.BLACK);
WritableCellFormat wcfFC = new jxl.write.WritableCellFormat(wfc);
ArrayList row = new ArrayList(); //表格头行
ArrayList tableContent = new ArrayList();
row.add("1");
row.add("1");
row.add("1");
row.add("1");
tableContent.add(row);
try {
for (int i = 0; i < tableContent.size(); i++) {
ArrayList row1 = (ArrayList) tableContent.get(i);
for (int j = 0; j < row1.size(); j++) {
Label labelC = new jxl.write.Label(j, i+1, (String) row1.get(j), wcfFC);
// ws.addCell(labelC);
}
}
// 写入Exel工作表
wwb.close();
// 关闭Excel工作薄对象
wwb.close();
} catch (Exception e) {
e.printStackTrace();
}
}
public void test(){
try
{
// Excel获得文件
Workbook wb=Workbook.getWorkbook(new File("d:\\test.xls"));
// 打开一个文件的副本,并且指定数据写回到原文件
WritableWorkbook book=
Workbook.createWorkbook(new File("d:\\test.xls"),wb);
// 添加一个工作表
WritableSheet sheet=book.createSheet("Sheet1",0);
// WritableSheet sheet=(WritableSheet) wb.getSheet("Sheet1");
sheet.addCell(new Label(0,1,"第二页的测试数据"));
book.write();
book.close();
}catch(Exception e)
{
System.out.println(e);
}
}
public static void main(String [] args) throws IOException, WriteException{
OutputExcel oe = new OutputExcel();
oe.outPutData();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -