<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    新的起步,做好工作總結

    J2EE相關技術總結

    常用鏈接

    統計

    最新評論

    POI操作

    POI中可能會用到一些需要設置EXCEL單元格格式的操作小結:

    先獲取工作薄對象:

    HSSFWorkbook wb = new HSSFWorkbook();

    HSSFSheet sheet = wb.createSheet();

    HSSFCellStyle setBorder = wb.createCellStyle();

    一、設置背景色:

    setBorder.setFillForegroundColor((short) 13);// 設置背景色

    setBorder.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);

    二、設置邊框:

    setBorder.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下邊框

    setBorder.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左邊框

    setBorder.setBorderTop(HSSFCellStyle.BORDER_THIN);//上邊框

    setBorder.setBorderRight(HSSFCellStyle.BORDER_THIN);//右邊框

    三、設置居中:

    setBorder.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 居中

    四、設置字體:

    HSSFFont font = wb.createFont();

    font.setFontName("黑體");

    font.setFontHeightInPoints((short) 16);//設置字體大小

    HSSFFont font2 = wb.createFont();

    font2.setFontName("仿宋_GB2312");

    font2.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);//粗體顯示

    font2.setFontHeightInPoints((short) 12);

    setBorder.setFont(font);//選擇需要用到的字體格式

    五、設置列寬:

    sheet.setColumnWidth(0, 3766); //第一個參數代表列id(從0開始),第2個參數代表寬度值

    六、設置自動換行:

    setBorder.setWrapText(true);//設置自動換行

    七、合并單元格:

    Region region1 = new Region(0, (short) 0, 0, (short) 6);

    //參數1:行號 參數2:起始列號 參數3:行號 參數4:終止列號

    sheet.addMergedRegion(region1);

    附一個完整的例子:

    package cn.com.util;

    import org.apache.poi.hssf.usermodel.HSSFCellStyle;

    import org.apache.poi.hssf.usermodel.HSSFFont;

    import org.apache.poi.hssf.usermodel.HSSFRichTextString;

    import org.apache.poi.hssf.usermodel.HSSFWorkbook;

    import org.apache.poi.hssf.usermodel.HSSFSheet;

    import org.apache.poi.hssf.usermodel.HSSFRow;

    import org.apache.poi.hssf.usermodel.HSSFCell;

    import org.apache.poi.hssf.util.CellRangeAddress;

    import org.apache.poi.hssf.util.Region;

    import org.apache.poi.ss.usermodel.CellStyle;

    import java.io.FileOutputStream;

    import javax.servlet.http.HttpServlet;

    public class CreateXL extends HttpServlet {

    /** Excel 文件要存放的位置,假定在D盤下 */

    public static String outputFile = "c:test.xls";

    private void cteateCell(HSSFWorkbook wb, HSSFRow row, short col, String val) {

    HSSFCell cell = row.createCell(col);

    // cell.setEncoding(HSSFCell.ENCODING_UTF_16);

    cell.setCellValue(val);

    HSSFCellStyle cellstyle = wb.createCellStyle();

    cellstyle.setAlignment(HSSFCellStyle.ALIGN_CENTER_SELECTION);

    cell.setCellStyle(cellstyle);

    }

    public static void main(String argv[]) {

    try {

    // 創建新的Excel 工作簿

    HSSFWorkbook workbook = new HSSFWorkbook();

    // 設置字體

    HSSFFont font = workbook.createFont();

    // font.setColor(HSSFFont.COLOR_RED);

    font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);

    font.setFontHeightInPoints((short) 14);

    // HSSFFont font2 = workbook.createFont();

    // font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);

    // font.setFontHeightInPoints((short)14);

    // 設置樣式

    HSSFCellStyle cellStyle = workbook.createCellStyle();

    cellStyle.setFont(font);

    cellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);

    // HSSFCellStyle cellStyle2= workbook.createCellStyle();

    // cellStyle.setFont(font2);

    // cellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);

    // 在Excel工作簿中建一工作表,其名為缺省值

    // 如要新建一名為"月報表"的工作表,其語句為:

    HSSFSheet sheet = workbook.createSheet("月報表");

    CellRangeAddress cellRangeAddress = new CellRangeAddress(0, 0, 0,

    11);

    sheet.addMergedRegion(cellRangeAddress);

    //第一行

    // 在索引0的位置創建行(最頂端的行)

    HSSFRow row = sheet.createRow(0);

    // 在索引0的位置創建單元格(左上端)

    HSSFCell cell = row.createCell(0);

    // 定義單元格為字符串類型

    cell.setCellType(HSSFCell.CELL_TYPE_STRING);

    cell.setCellStyle(cellStyle);

    // 在單元格中輸入一些內容

    cell.setCellValue(new HSSFRichTextString("北京億卡聯科技發展有限公司小區門禁維修月報表"));

    //第二行

    cellRangeAddress = new CellRangeAddress(1, 1, 3, 6);

    sheet.addMergedRegion(cellRangeAddress);

    row = sheet.createRow(1);

    HSSFCell datecell = row.createCell(3);

    datecell.setCellType(HSSFCell.CELL_TYPE_STRING);

    datecell.setCellStyle(cellStyle);

    datecell.setCellValue("時間間隔xxxxx");

    cellRangeAddress = new CellRangeAddress(1, 1, 9,

    10);

    sheet.addMergedRegion(cellRangeAddress);

    row.createCell(9).setCellValue("單位:元");

    //第三行

    row=sheet.createRow(2);

    row.createCell(0).setCellValue("一、");

    row.createCell(1).setCellValue("基本資料");

    //第4行

    row=sheet.createRow(3);

    row.createCell(1).setCellValue("小區名稱:");

    cellRangeAddress=new CellRangeAddress(3,3,2,11);

    sheet.addMergedRegion(cellRangeAddress);

    row.createCell(2).setCellValue("xxxxx");

    //第5行

    row=sheet.createRow(4);

    row.createCell(1).setCellValue("座落地點:");

    cellRangeAddress=new CellRangeAddress(4,4,2,11);

    sheet.addMergedRegion(cellRangeAddress);

    row.createCell(2).setCellValue("xxxxx");

    //第6行

    row=sheet.createRow(5);

    row.createCell(1).setCellValue("建成年月:");

    cellRangeAddress=new CellRangeAddress(5,5,2,4);

    sheet.addMergedRegion(cellRangeAddress);

    row.createCell(2).setCellValue("年月日:xxxxx");

    row.createCell(5).setCellValue("聯系人");

    cellRangeAddress=new CellRangeAddress(5,5,6,8);

    sheet.addMergedRegion(cellRangeAddress);

    row.createCell(6).setCellValue("XXX");

    row.createCell(9).setCellValue("電話");

    cellRangeAddress=new CellRangeAddress(5,5,10,11);

    sheet.addMergedRegion(cellRangeAddress);

    row.createCell(10).setCellValue("XXX");

    //第7行

    row=sheet.createRow(6);

    row.createCell(1).setCellValue("住戶:");

    row.createCell(2).setCellValue("(XX)");

    row.createCell(3).setCellValue("(戶)");

    cellRangeAddress=new CellRangeAddress(6,6,4,5);

    sheet.addMergedRegion(cellRangeAddress);

    row.createCell(4).setCellValue("共計(      )");      

    row.createCell(6).setCellValue("幢");

    cellRangeAddress=new CellRangeAddress(6,6,7,8);

    sheet.addMergedRegion(cellRangeAddress);

    row.createCell(7).setCellValue("發卡張數");  

    cellRangeAddress=new CellRangeAddress(6,6,9,10);

    sheet.addMergedRegion(cellRangeAddress);

    row.createCell(9).setCellValue("xxxx");

    //第9行

    row=sheet.createRow(8);

    row.createCell(0).setCellValue("二、");

    cellRangeAddress=new CellRangeAddress(8,8,1,2);

    sheet.addMergedRegion(cellRangeAddress);

    row.createCell(1).setCellValue("維修用材料臺賬");

    row.createCell(6).setCellValue("三、");

    cellRangeAddress=new CellRangeAddress(8,8,7,9);

    sheet.addMergedRegion(cellRangeAddress);

    row.createCell(7).setCellValue("維修工時記錄");

    //第10行

    row=sheet.createRow(9);

    row.createCell(0).setCellValue("日期");

    row.createCell(1).setCellValue("維修事項");

    row.createCell(2).setCellValue("材料清單");

    row.createCell(3).setCellValue("數量");

    row.createCell(4).setCellValue("單價");

    row.createCell(5).setCellValue("材料金額");

    row.createCell(7).setCellValue("日期");

    row.createCell(8).setCellValue("技工");

    row.createCell(9).setCellValue("工時數");

    row.createCell(10).setCellValue("單價");

    row.createCell(11).setCellValue("工時金額");

    //填充數據

    for (int i = 0; i < 10; i++) {

    row=sheet.createRow(9+i+1);

    row.createCell(0).setCellValue("日期");

    row.createCell(1).setCellValue("維修事項");

    row.createCell(2).setCellValue("材料清單");

    row.createCell(3).setCellValue("數量");

    row.createCell(4).setCellValue("單價");

    row.createCell(5).setCellValue("材料金額");

    row.createCell(7).setCellValue("日期");

    row.createCell(8).setCellValue("技工");

    row.createCell(9).setCellValue("工時數");

    row.createCell(10).setCellValue("單價");

    row.createCell(11).setCellValue("工時金額");

    }

    //第n+10行

    row=sheet.createRow(9+10+1);

    //cellRangeAddress=new CellRangeAddress(19,19,0,4);

    //sheet.addMergedRegion(cellRangeAddress);

    row.createCell(0).setCellValue("累計:");

    row.createCell(1).setCellValue("xxx");

    row.createCell(7).setCellValue("累計:");

    row.createCell(8).setCellValue("xxx");

    // 新建一輸出文件流

    FileOutputStream fOut = new FileOutputStream(outputFile);

    // 把相應的Excel 工作簿存盤

    workbook.write(fOut);

    fOut.flush();

    // 操作結束,關閉文件

    fOut.close();

    System.out.println("文件生成...");

    } catch (Exception e) {

    System.out.println("已運行 xlCreate() : " + e);

    }

    }

    }

    posted on 2012-08-20 15:09 史明明 閱讀(144) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 鲁死你资源站亚洲av| 无码国产精品一区二区免费vr| 久久久青草青青国产亚洲免观| 一区二区三区精品高清视频免费在线播放 | 亚洲五月六月丁香激情| www.黄色免费网站| 免费无码国产V片在线观看| 久久久久久a亚洲欧洲AV| 成人五级毛片免费播放| 国产精品99爱免费视频| 亚洲fuli在线观看| 亚洲伊人成无码综合网 | 中文字幕av无码无卡免费| 青娱乐在线视频免费观看| 亚洲va中文字幕无码久久| 黄网址在线永久免费观看| 日韩电影免费在线观看中文字幕 | 成人无码区免费A∨直播| 亚洲国产美女在线观看| 免费一级黄色毛片| 国产四虎免费精品视频| 日韩免费高清播放器| 日韩精品亚洲专区在线影视| 亚洲专区先锋影音| 亚洲一区二区三区在线观看精品中文| 四虎成人免费网址在线| 97免费人妻在线视频| 中文字幕免费在线看线人动作大片| 亚洲综合色丁香婷婷六月图片| 亚洲AV无码成人精品区蜜桃| 免费a级毛片无码av| 成年女人喷潮毛片免费播放| 无码专区AAAAAA免费视频| 精品一区二区三区免费视频 | 91精品国产免费网站| 99精品视频在线观看免费| 毛片亚洲AV无码精品国产午夜| 亚洲人成影院77777| 亚洲尹人九九大色香蕉网站| 亚洲宅男天堂在线观看无病毒| 国产美女做a免费视频软件|