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

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

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

    Sunspl

    Hello,everyone,i am sun. 天道酬勤,笨鳥先飛.
    隨筆 - 47, 文章 - 0, 評論 - 24, 引用 - 0
    數(shù)據(jù)加載中……

    POI操作

    package cc.dynasoft.struts.action;

    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.util.Iterator;
    import java.util.List;
    import java.util.Vector;

    import org.apache.poi.hssf.usermodel.HSSFCell;
    import org.apache.poi.hssf.usermodel.HSSFCellStyle;
    import org.apache.poi.hssf.usermodel.HSSFFont;
    import org.apache.poi.hssf.usermodel.HSSFFooter;
    import org.apache.poi.hssf.usermodel.HSSFHeader;
    import org.apache.poi.hssf.usermodel.HSSFPrintSetup;
    import org.apache.poi.hssf.usermodel.HSSFRow;
    import org.apache.poi.hssf.usermodel.HSSFSheet;
    import org.apache.poi.hssf.usermodel.HSSFWorkbook;
    import org.apache.poi.hssf.util.HSSFColor;
    import org.apache.poi.hssf.util.Region;

    import cc.dynasoft.bean.Department;

    ///import org.apache.poi.hssf.record.HeaderRecorder;

    public class OutputExcel {

    public static boolean outputExcel(ExcelArgs args, List title, List list) {
     try {
      int cellNum = args.getCellNum(); // workbook
      int rowNum = args.getRowNum();
      /**
       * 建立表格設(shè)置。
       */
      HSSFWorkbook wb = new HSSFWorkbook(); // create the new Workbook
      HSSFSheet sheet = wb.createSheet(args.getSheetName()); // create
      /**
       * 打印設(shè)置
       */
      HSSFPrintSetup hps = sheet.getPrintSetup();
      hps.setPaperSize((short) 9); // 設(shè)置A4紙
      // hps.setLandscape(true); // 將頁面設(shè)置為橫向打印模式
      sheet.setHorizontallyCenter(true); // 設(shè)置打印頁面為水平居中
      // sheet.setVerticallyCenter(true); // 設(shè)置打印頁面為垂直居中
      wb.setPrintArea(0, "$A$2:$e$" + rowNum + 2);// 打印區(qū)域設(shè)置.
      /**
       * 設(shè)置表的Footer
       */
      HSSFFooter footer = sheet.getFooter();
      // 設(shè)置footer的位置和顯示的內(nèi)容
      footer.setCenter("Time:" + HSSFFooter.date());
      footer.setRight("Page " + HSSFFooter.page() + " of "
        + HSSFFooter.numPages());
      /**
       * 設(shè)置表的Header
       */
      // 設(shè)置header的位置,共有三種位置和相應(yīng)的顯示設(shè)置
      HSSFHeader header = sheet.getHeader();
      // header.setRight("Center Header");
      // header.setLeft("Left Header");
      header.setCenter(HSSFHeader.font("Stencil-Normal", "Italic")
        + HSSFHeader.fontSize((short) 30) + args.getHeaderTitle());
      // header.endDoubleUnderline();
      header.startUnderline();
      /**
       * 設(shè)置列的寬度
       */
      sheet.setColumnWidth((short) 2,
        (short) ((30 * 8) / ((double) 1 / 10)));
      sheet.setColumnWidth((short) 3,
        (short) ((40 * 8) / ((double) 1 / 10)));
      sheet.setColumnWidth((short) 4,
        (short) ((50 * 8) / ((double) 1 / 20)));
      /**
       * 創(chuàng)建第一行,也就是顯示的標(biāo)題, 可以高置的高度,單元格的格式,顏色,字體等設(shè)置. 同時(shí)可以合并單元格.
       */
      HSSFRow row0 = sheet.createRow(0); // 創(chuàng)建0行
      row0.setHeight((short) 0x300); // 設(shè)直行的高度.
      HSSFFont font2 = wb.createFont(); // 創(chuàng)建字體格式
      font2.setColor(HSSFFont.SS_NONE); // 設(shè)置單元格字體的顏色.
      font2.setFontHeight((short) 700); // 設(shè)置字體大小
      font2.setFontName("Courier New"); // 設(shè)置單元格字體
      HSSFCell cell0 = row0.createCell((short) 0); // 創(chuàng)建0行0列.
      HSSFCellStyle style3 = wb.createCellStyle(); // 創(chuàng)建單元格風(fēng)格.
      style3.setAlignment(HSSFCellStyle.VERTICAL_CENTER); // 垂直居中
      style3.setAlignment(HSSFCellStyle.ALIGN_CENTER); // /水平居中
      style3.setFont(font2); // 將字體格式加入到單元格風(fēng)格當(dāng)中
      // cell0.setCellType()
      cell0.setCellStyle(style3); // 設(shè)置單元格的風(fēng)格.
      cell0.setCellValue(args.getHeaderTitle()); // 設(shè)置單元的內(nèi)容.
      sheet.addMergedRegion(new Region(0, (short) 0, 0,
        (short) (cellNum - 1)));// 指定合并區(qū)域,前二個(gè)參數(shù)為開始處X,Y坐標(biāo).后二個(gè)為結(jié)束的坐標(biāo).
      /**
       * 設(shè)置其它數(shù)據(jù) 設(shè)置風(fēng)格
       */
      HSSFCellStyle style = wb.createCellStyle();
      style.setBorderBottom(HSSFCellStyle.BORDER_THIN); // 設(shè)置單無格的邊框?yàn)榇煮w
      style.setBottomBorderColor(HSSFColor.BLACK.index); // 設(shè)置單元格的邊框顏色.
      style.setBorderLeft(HSSFCellStyle.BORDER_THIN);
      style.setLeftBorderColor(HSSFColor.BLACK.index);
      style.setBorderRight(HSSFCellStyle.BORDER_THIN);
      style.setRightBorderColor(HSSFColor.BLACK.index);
      style.setBorderTop(HSSFCellStyle.BORDER_THIN);
      style.setTopBorderColor(HSSFColor.BLACK.index);
      // style.setWrapText(true);//文本區(qū)域隨內(nèi)容多少自動調(diào)整

      // style.setFillForegroundColor(HSSFColor.LIME.index);
      // style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
      /**
       * 設(shè)置風(fēng)格1
       */
      HSSFCellStyle style1 = wb.createCellStyle();
      style1.setBorderBottom(HSSFCellStyle.BORDER_THIN); // 設(shè)置單無格的邊框?yàn)榇煮w
      style1.setBottomBorderColor(HSSFColor.BLACK.index); // 設(shè)置單元格的邊框顏色.
      style1.setBorderLeft(HSSFCellStyle.BORDER_THIN);
      style1.setLeftBorderColor(HSSFColor.BLACK.index);
      style1.setBorderRight(HSSFCellStyle.BORDER_THIN);
      style1.setRightBorderColor(HSSFColor.BLACK.index);
      style1.setBorderTop(HSSFCellStyle.BORDER_MEDIUM);
      style1.setTopBorderColor(HSSFColor.BLACK.index);
      style1.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);// 最好的設(shè)置Pattern
      // 單元格背景的顯示模式.
      style1.setFillForegroundColor(new HSSFColor.RED().getIndex()); // 設(shè)置單元格背景色;
      style1.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 水平對齊方式
      // style1.setWrapText(true);//文本區(qū)域隨內(nèi)容多少自動調(diào)整
      // style.setFillPattern(HSSFCellStyle.//);
      // 設(shè)置字體Color,首先創(chuàng)建Font對象,后對font設(shè)置,然后做為參數(shù)傳給style
      HSSFFont font = wb.createFont();
      font.setColor(HSSFFont.SS_NONE);
      // font.setFontHeightInPoints((short)24);
      font.setFontName("Courier New");
      // font.setItalic(true);
      // font.setStrikeout(true);//給字體加上刪除線
      font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
      style1.setFont(font);
      /**
       *
       * 設(shè)置第零行表格說明行
       *
       *
       *
       */
      HSSFRow row1 = sheet.createRow((short) 1);
      for (int j = 0; j < cellNum; j++) {
       HSSFCell cell = row1.createCell((short) j);
       cell.setCellValue((String) title.get(j));
       cell.setCellStyle(style1);
      }
      // style.setFillPattern(HSSFCellStyle.NO_FILL);

      /**
       * 設(shè)置表的內(nèi)容主體
       */

      Iterator iter = list.iterator();
      for (int i = 2; iter.hasNext(); i++) {
       Department dep = (Department) iter.next();
       HSSFRow row = sheet.createRow((short) i);
       HSSFCell cell5 = row.createCell((short) 0);
       HSSFCell cell1 = row.createCell((short) 1);
       HSSFCell cell2 = row.createCell((short) 2);
       HSSFCell cell3 = row.createCell((short) 3);
       HSSFCell cell4 = row.createCell((short) 4);
       cell5.setCellValue(dep.getId());
       cell5.setCellStyle(style);
       cell1.setCellValue(dep.getParentId());
       cell1.setCellStyle(style);
       cell2.setCellValue(dep.getName());
       cell2.setCellStyle(style);
       cell3.setCellValue(dep.getDescription());
       cell3.setCellStyle(style);
       cell4.setCellValue(dep.getImagePath());
       cell4.setCellStyle(style);
      }
      // Write the output to a file}
      // FileOutputStream fileOut = new
      // FileOutputStream(args.getPath()+args.getFileName());
      /**
       * 對文件進(jìn)行輸出操作。
       */
      FileOutputStream fileOut = new FileOutputStream(args
        .getPathAndName());
      wb.write(fileOut);
      // fileOut.close();
     } catch (IOException ex) {
      ex.printStackTrace();
     } catch (Exception ex) {
      ex.printStackTrace();
     }
     return true;
    }

    }

    posted on 2009-06-13 19:52 JavaSuns 閱讀(599) 評論(0)  編輯  收藏


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


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲视频在线免费看| 免费v片在线观看无遮挡| 亚洲熟妇丰满多毛XXXX| 亚洲AV无码专区国产乱码电影 | 亚洲卡一卡2卡三卡4麻豆| 亚洲日韩精品A∨片无码加勒比| 综合在线免费视频| 亚洲 自拍 另类小说综合图区| 亚洲爆乳无码一区二区三区| 在线观看亚洲AV每日更新无码 | 久久精品a一国产成人免费网站| 亚洲日本国产乱码va在线观看| 1000部羞羞禁止免费观看视频| 亚洲国产日韩在线| 毛片免费在线观看网站| 亚洲韩国精品无码一区二区三区| 99在线视频免费观看| 亚洲VA成无码人在线观看天堂 | 国产AV无码专区亚洲AV麻豆丫 | 一二三四免费观看在线视频中文版| 亚洲精品二三区伊人久久| 免费高清小黄站在线观看| 免费一区二区三区在线视频| 亚洲精品蜜桃久久久久久| 在线观看免费中文视频| 亚洲色欲久久久综合网东京热| 免费黄色电影在线观看| 国产午夜亚洲精品午夜鲁丝片| 最近免费mv在线观看动漫 | 日本特黄特色免费大片| 免费看一级高潮毛片| 亚洲国产成人片在线观看无码| 麻豆一区二区免费播放网站| 亚洲成人激情在线| 两个人看的www免费视频| 亚洲一区精品视频在线| 每天更新的免费av片在线观看| 亚洲欧洲AV无码专区| 亚洲国产三级在线观看| 扒开双腿猛进入爽爽免费视频| 国产精品免费在线播放|