Jxl操作Excel定义格式

定义格式工具类

package net.wwwyibu.orm;
import jxl.format.Border;
import jxl.format.BorderLineStyle;
import jxl.format.Colour;
import jxl.format.UnderlineStyle;
import jxl.write.WritableCellFormat;
import jxl.write.WritableFont;
/**
 * 定义Excel格式
 * @author 马家立
 * @version 2018年9月27日
 */
public class ExceltitlefFormat {
    private WritableCellFormat titlefFormat;    //设置字体 宋体10
    private WritableCellFormat titlefFormat1;    //设置字体 宋体加粗18
    private WritableCellFormat titlefFormat2;    //设置字体 宋体加粗13
    private WritableCellFormat titlefFormat3;    //设置字体 宋体加粗10,标记待扣分,蓝色
    private WritableCellFormat titlefFormat4;    //设置字体 宋体加粗10,标记已扣分,红色
    private WritableCellFormat titlefFormat5;    //设置字体 宋体加粗10,标记免扣分,黑色
    private WritableCellFormat titlefFormat6;    //设置字体 宋体加粗10,绿色
    public WritableCellFormat getTitlefFormat(){
        try {
            jxl.write.WritableFont titleFont = new jxl.write.WritableFont(
                    WritableFont.createFont("宋体"), 10);
            titlefFormat = new WritableCellFormat(titleFont);
            titlefFormat.setAlignment(jxl.format.Alignment.CENTRE);//设置居中
            titlefFormat.setBorder(Border.ALL, BorderLineStyle.THIN);//设置边框
            /*//设置自动换行
            WritableCellFormat writableCellFormat = new WritableCellFormat(titleFont);
            writableCellFormat.setWrap(true);*/
            titlefFormat.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE);//垂直居中
            titlefFormat.setWrap(true);
            //titlefFormat.setBackground(Colour.BLUE_GREY);  //设置背景颜色
        } catch (Exception e) {
            e.printStackTrace();
        }
        return titlefFormat;
    }
    public WritableCellFormat getTitlefFormat1() {
        try {
            jxl.write.WritableFont titleFont1 = new jxl.write.WritableFont(
                    WritableFont.createFont("宋体"), 18, WritableFont.BOLD);
            titlefFormat1 = new WritableCellFormat(titleFont1);
            titlefFormat1.setAlignment(jxl.format.Alignment.CENTRE);//设置居中
            titlefFormat1.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE);//垂直居中
            titlefFormat1.setBorder(Border.ALL, BorderLineStyle.THIN);//设置边框
        } catch (Exception e) {
            e.printStackTrace();
        }
        return titlefFormat1;
    }
    public WritableCellFormat getTitlefFormat2() {
        try {
            jxl.write.WritableFont titleFont2 = new jxl.write.WritableFont(
                    WritableFont.createFont("宋体"), 13, WritableFont.BOLD);
            titlefFormat2 = new WritableCellFormat(titleFont2);
            titlefFormat2.setAlignment(jxl.format.Alignment.CENTRE);//设置水平居中
            titlefFormat2.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE);//垂直居中
            titlefFormat2.setBorder(Border.ALL, BorderLineStyle.THIN);//设置边框
        } catch (Exception e) {
            e.printStackTrace();
        }
        return titlefFormat2;
    }
    public WritableCellFormat getTitlefFormat3() {
        try {
            jxl.write.WritableFont titleFont3 = new jxl.write.WritableFont(
                    WritableFont.createFont("宋体"),10,WritableFont.BOLD,
                    false,UnderlineStyle.NO_UNDERLINE,Colour.BLUE);
            titlefFormat3 = new WritableCellFormat(titleFont3);
            titlefFormat3.setAlignment(jxl.format.Alignment.CENTRE);//设置居中
            titlefFormat3.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE);//垂直居中
            titlefFormat3.setBorder(Border.ALL, BorderLineStyle.THIN);//设置边框
        } catch (Exception e) {
            e.printStackTrace();
        }
        return titlefFormat3;
    }
    public WritableCellFormat getTitlefFormat4() {
        try {
            jxl.write.WritableFont titleFont4 = new jxl.write.WritableFont(
                    WritableFont.createFont("宋体"),10,WritableFont.BOLD,
                    false,UnderlineStyle.NO_UNDERLINE,Colour.RED);
            titlefFormat4 = new WritableCellFormat(titleFont4);
            titlefFormat4.setAlignment(jxl.format.Alignment.CENTRE);//设置居中
            titlefFormat4.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE);//垂直居中
            titlefFormat4.setBorder(Border.ALL, BorderLineStyle.THIN);//设置边框
        } catch (Exception e) {
            e.printStackTrace();
        }
        return titlefFormat4;
    }
    public WritableCellFormat getTitlefFormat5() {
        try {
            jxl.write.WritableFont titleFont5 = new jxl.write.WritableFont(
                    WritableFont.createFont("宋体"),10,WritableFont.BOLD,
                    false,UnderlineStyle.NO_UNDERLINE,Colour.BLACK);
            titlefFormat5 = new WritableCellFormat(titleFont5);
            titlefFormat5.setAlignment(jxl.format.Alignment.CENTRE);//设置居中
            titlefFormat5.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE);//垂直居中
            titlefFormat5.setBorder(Border.ALL, BorderLineStyle.THIN);//设置边框
        } catch (Exception e) {
            e.printStackTrace();
        }
        return titlefFormat5;
    }
    public WritableCellFormat getTitlefFormat6() {
        try {
            jxl.write.WritableFont titleFont6 = new jxl.write.WritableFont(
                    WritableFont.createFont("宋体"),10,WritableFont.BOLD,
                    false,UnderlineStyle.NO_UNDERLINE,Colour.GREEN);
            titlefFormat6 = new WritableCellFormat(titleFont6);
            titlefFormat6.setAlignment(jxl.format.Alignment.CENTRE);//设置居中
            titlefFormat6.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE);//垂直居中
            titlefFormat6.setBorder(Border.ALL, BorderLineStyle.THIN);//设置边框
        } catch (Exception e) {
            e.printStackTrace();
        }
        return titlefFormat6;
    }
    public static void main(String[] args) {
        ExceltitlefFormat oo = new ExceltitlefFormat();
        WritableCellFormat oooCellFormat = oo.getTitlefFormat();
        System.out.println(oooCellFormat);
        System.out.println(123);
    }
}

 测试导出Excel的Main方法:

import jxl.Workbook;  
  public static void main(String[] args) {
        try {
            File file = new File("D:\\测试Exce导出.xlsx");
            if(!file.exists()) {
                file.createNewFile();
            }
            jxl.write.WritableWorkbook wwb = null;
            wwb = Workbook.createWorkbook(file);
            //0是sheet编号
            jxl.write.WritableSheet sheet = wwb.createSheet("测试Excel", 0);
            // Excel格式类
            ExceltitlefFormat ef = new ExceltitlefFormat();
            // 设置列宽(第几列,多少px),若不设置则是为默认
            sheet.setColumnView(0, 10);
            sheet.setColumnView(1, 15);
            sheet.setColumnView(2, 20);
            sheet.setColumnView(3, 25);
            sheet.setColumnView(4, 30);
            sheet.setColumnView(5, 35);
            //开始写数据
            sheet.addCell(new jxl.write.Label(0, 0,"123",ef.getTitlefFormat()));
            sheet.addCell(new jxl.write.Label(1, 0,"123",ef.getTitlefFormat1()));
            sheet.addCell(new jxl.write.Label(2, 0,"123",ef.getTitlefFormat2()));
            sheet.addCell(new jxl.write.Label(3, 0,"123",ef.getTitlefFormat3()));
            sheet.addCell(new jxl.write.Label(4, 0,"123",ef.getTitlefFormat4()));
            sheet.addCell(new jxl.write.Label(5, 0,"123",ef.getTitlefFormat5()));
            sheet.addCell(new jxl.write.Label(6, 0,"123",ef.getTitlefFormat6()));
            sheet.addCell(new jxl.write.Label(7, 0,"123",ef.getTitlefFormat()));
            wwb.write();
            wwb.close();
            System.out.println("导出成功");
        } catch (WriteException e) {
            e.printStackTrace();
            System.out.println("导出失败");
        } catch (IOException e) {
            e.printStackTrace();
            System.out.println("导出失败");
        }
   }

猜你喜欢

转载自www.cnblogs.com/mjtabu/p/12713817.html