您的位置:首页 > 编程语言 > Java开发

JAVA生成Excel

2013-02-08 17:46 295 查看

示例:

Java代码







//** **********创建工作簿************ */

WritableWorkbook workbook = Workbook.createWorkbook(new File("d:/test.xls"));

/** *//** **********创建工作表************ */

WritableSheet sheet = workbook.createSheet("工作表名称",
0);

/** *//** *********设置列宽**************** */

sheet.setColumnView(0,
15);
// 第1列
sheet.setColumnView(1,
18);
// 第2列

// 设置行高
sheet.setRowView( 0 ,
600 ,
false );
sheet.setRowView( 1 ,
400 ,
false );

// 设置页边距
sheet.getSettings().setRightMargin( 0.5 );

// 设置页脚
sheet.setFooter( "" ,
"" ,
" 测试页脚 " );
/** */
/** ************设置单元格字体************** */

// 字体
WritableFont NormalFont = new WritableFont(WritableFont.ARIAL,
10 );
WritableFont BoldFont = new WritableFont(WritableFont.ARIAL,
14 ,
WritableFont.BOLD);
WritableFont tableFont = new WritableFont(WritableFont.ARIAL,
12 ,
WritableFont.NO_BOLD);
WritableFont baodanFont = new WritableFont(WritableFont.ARIAL,
10 ,
WritableFont.BOLD);

/** */
/** ************以下设置几种格式的单元格************ */

// 用于标题
WritableCellFormat wcf_title = new WritableCellFormat(BoldFont);

wcf_title.setBorder(Border.NONE, BorderLineStyle.THIN);
// 线条
wcf_title.setVerticalAlignment(VerticalAlignment.CENTRE);
// 垂直对齐
wcf_title.setAlignment(Alignment.CENTRE); // 水平对齐

wcf_title.setWrap( true );
// 是否换行

// 用于表格标题
WritableCellFormat wcf_tabletitle = new WritableCellFormat(

tableFont);
wcf_tabletitle.setBorder(Border.NONE, BorderLineStyle.THIN);
// 线条
wcf_tabletitle.setVerticalAlignment(VerticalAlignment.CENTRE);
// 垂直对齐
wcf_tabletitle.setAlignment(Alignment.CENTRE); // 水平对齐

wcf_tabletitle.setWrap( true );
// 是否换行

// 用于正文左
WritableCellFormat wcf_left = new WritableCellFormat(NormalFont);

wcf_left.setBorder(Border.ALL, BorderLineStyle.THIN); // 线条

wcf_left.setVerticalAlignment(VerticalAlignment.CENTRE);
// 垂直对齐
wcf_left.setAlignment(Alignment.LEFT);
wcf_left.setWrap( true );
// 是否换行

// 用于正文左
WritableCellFormat wcf_center = new WritableCellFormat(NormalFont);

wcf_center.setBorder(Border.ALL, BorderLineStyle.THIN);
// 线条
wcf_center.setVerticalAlignment(VerticalAlignment.CENTRE);
// 垂直对齐
wcf_center.setAlignment(Alignment.CENTRE);
wcf_center.setWrap( true );
// 是否换行

// 用于正文右
WritableCellFormat wcf_right = new WritableCellFormat(NormalFont);

wcf_right.setBorder(Border.ALL, BorderLineStyle.THIN);
// 线条
wcf_right.setVerticalAlignment(VerticalAlignment.CENTRE);
// 垂直对齐
wcf_right.setAlignment(Alignment.RIGHT);
wcf_right.setWrap( false );
// 是否换行

// 用于跨行
WritableCellFormat wcf_merge = new WritableCellFormat(NormalFont);

wcf_merge.setBorder(Border.ALL, BorderLineStyle.THIN);
// 线条
wcf_merge.setVerticalAlignment(VerticalAlignment.TOP);
// 垂直对齐
wcf_merge.setAlignment(Alignment.LEFT);
wcf_merge.setWrap( true );
// 是否换行

WritableCellFormat wcf_table = new WritableCellFormat(NormalFont);

wcf_table.setBorder(Border.ALL, BorderLineStyle.THIN);
// 线条
wcf_table.setVerticalAlignment(VerticalAlignment.CENTRE);
// 垂直对齐
wcf_table.setAlignment(Alignment.CENTRE);
wcf_table.setBackground(Colour.GRAY_25);
wcf_table.setWrap( true );
// 是否换行

/** */
/** ************单元格格式设置完成****************** */

// 合并单元格,注意mergeCells(col0,row0,col1,row1) --列从0开始,col1为你要合并到第几列,行也一样

sheet.mergeCells( 0 ,
0 ,
5 , 0 );

sheet.addCell( new Label(
0 ,
0 , " 这里是大标题,自定义格式 " ,

wcf_title));
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: