在jxl里面有没有能够给单独哪条边加边框的啊?
我这边做了一个excle导出功能,但是要求整个表格最外面的四条边要加粗,我实在没办法了~
请各位高人指点小妹一下~~~

解决方案 »

  1.   

    package com.WenXuan.exceltest;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.sql.ResultSet;
    import java.sql.ResultSetMetaData;
    import javax.swing.JTable;import org.apache.poi.hssf.usermodel.HSSFCell;
    import org.apache.poi.hssf.usermodel.HSSFRow;
    import org.apache.poi.hssf.usermodel.HSSFSheet;
    import org.apache.poi.hssf.usermodel.HSSFWorkbook;public class OutputExcel { private HSSFWorkbook workbook ;

    private HSSFSheet sheet ;

    private HSSFCell cell ;

    private HSSFRow cellRow ;

    private FileOutputStream fos ;

    private JTable table ;


    public OutputExcel(String string ){ workbook = new HSSFWorkbook();//设置工作薄

    sheet = workbook.createSheet();//设置工作薄
    workbook.setSheetName(0, "sheet1", HSSFWorkbook.ENCODING_UTF_16);

    try{
    Consql conSQl = new Consql();
    ResultSet rs = conSQl.getRS(string);
    rs.last();
    ResultSetMetaData resultsetMetaData = rs.getMetaData();
    int cell_row = 0; 
    int cell_col = resultsetMetaData.getColumnCount();
    int  = 0;
    rs.first();
    while(rs.next()){
    if( == 0){
    rs.first();
    HSSFRow cellrow = sheet.createRow((short)0);
    for(int i =0 ; i <cell_col ; ++i){
    HSSFCell cell = cellrow.createCell((short)i);
    cell.setEncoding(HSSFCell.ENCODING_UTF_16);
    String str = rs.getString(i+1);
    cell.setCellValue(str);
    }
    ++;
    }
    else {
    HSSFRow cellrow = sheet.createRow((short)cell_row+1);
    for(int i =0 ; i <cell_col ; ++i){
    HSSFCell cell = cellrow.createCell((short)i);
    cell.setEncoding(HSSFCell.ENCODING_UTF_16);
    String str = rs.getString(i+1);
    cell.setCellValue(str);
    }
    cell_row++;
    }
    }
    }catch(Exception e ){
    e.printStackTrace();
    }
    try {

    fos = new FileOutputStream("123.xls");//创建一个excel表格
    try {
    workbook.write(fos);//用这个工作薄模型向输出的excel中写入
    } catch (IOException e) {

    e.printStackTrace();
    }

    try {
    fos.close();
    } catch (IOException e) {

    e.printStackTrace();
    }
    } catch (FileNotFoundException e) {

    e.printStackTrace();
    }
    }
    }不过需要用外部jar文件你到网上下一个。。多得是。
      

  2.   


    你定义最外层边框的单元格格式:
    try {

    // 黑色、10号、居中
             jxl.write.WritableFont font6 = new jxl.write.WritableFont(WritableFont.ARIAL, 10, WritableFont.NO_BOLD, false,jxl.format.UnderlineStyle.NO_UNDERLINE, jxl.format.Colour.BLACK);//黑字,默认背景
    jxl.write.WritableCellFormat black_10 = new jxl.write.WritableCellFormat(
    font6);
    //设置居中,换行,边框什么等等
            black_10.setAlignment(jxl.format.Alignment.CENTRE);
    black_10.setWrap(true);
    black_10.setBorder(Border.ALL, BorderLineStyle.THIN);
    } catch (Exception e) {
    e.printStackTrace();
    }然后如果你只给最外层的四个边框加这种格式的话,那就要所有的单元格全部生成以后,才能判断添加最外层的格式吧?  这里我没有做过,还要你多测试下。