浪跡天涯
          web報(bào)表設(shè)計(jì)器....
          posts - 61,comments - 71,trackbacks - 0

          ??jsp頁面上的代碼如下:
          ?response.setContentType("application/vnd.ms-excel;charset=GBK");
          ???String filename = new String(("excel名稱.xls").getBytes(),
          ?????"ISO-8859-1");
          ???response.setHeader("Content-Disposition", "attachment;"
          ?????+ " filename=" + filename);
          ??? <%
          ??? JavaBean bean = new JavaBean();
          ???? bean .loadDataToExcel(response);
          ? %>
          ? JavaBean 頁面上的代碼如下:
          ???
          ??public boolean loadDataToExcel(HttpServletResponse response,
          ???List items) {
          ??? boolean flag = false;
          ??? try {
          ???WritableWorkbook wwb = Workbook.createWorkbook(response
          ?????.getOutputStream());
          ???WritableSheet asheet = wwb.createSheet("處理信息統(tǒng)計(jì)表", 52);
          ???// 定義一個(gè)新字體,參數(shù)說明:字體,大小,格式,是否斜體,顏色(默認(rèn)黑色)
          ???WritableFont wfc = new WritableFont(WritableFont.ARIAL, 12,
          ?????WritableFont.BOLD, false);
          ???// 定義一個(gè)新字體,參數(shù)說明:字體,大小,格式,是否斜體,顏色(默認(rèn)黑色)//不加粗
          ???WritableFont wf = new WritableFont(WritableFont.ARIAL, 12,
          ?????WritableFont.NO_BOLD, false);
          ???// 設(shè)置單元格格式
          ???WritableCellFormat wchB = new WritableCellFormat(wfc);
          ???// 使單元格居中
          ???wchB.setAlignment(Alignment.CENTRE);
          ???// 設(shè)置制表單位&制表日期格式
          ???WritableCellFormat date = new WritableCellFormat(wf);
          ???// 設(shè)置表頭格式
          ???WritableCellFormat tTitle = new WritableCellFormat(wf);
          ???tTitle.setAlignment(Alignment.CENTRE);
          ???tTitle.setVerticalAlignment(VerticalAlignment.CENTRE);
          ???tTitle.setWrap(true);
          ???tTitle.setBorder(Border.ALL, BorderLineStyle.THIN);
          ???// 設(shè)置數(shù)據(jù)顯示格式
          ???WritableCellFormat data = new WritableCellFormat(wf);
          ???data.setBorder(Border.ALL, BorderLineStyle.THIN);
          ???// data.setb
          ???// 分別設(shè)置單元格的高度&寬度

          ???asheet.setColumnView(0, 12);
          ???asheet.setColumnView(1, 12);
          ???asheet.setColumnView(2, 8);
          ???asheet.setColumnView(3, 8);
          ???asheet.setColumnView(4, 8);
          ???asheet.setColumnView(5, 8);
          ???asheet.setColumnView(6, 8);
          ???asheet.setColumnView(7, 7);
          ???asheet.setColumnView(8, 7);
          ???asheet.setColumnView(9, 7);
          ???asheet.setColumnView(10, 7);
          ???asheet.setColumnView(11, 7);
          ???asheet.setColumnView(12, 7);
          ???asheet.setColumnView(13, 7);
          ???asheet.setColumnView(14, 7);

          ???/* 開始寫入xls文件 */
          ???// 導(dǎo)出excel文件標(biāo)題
          ???Label labelC = new Label(0, 0, "處理信息統(tǒng)計(jì)表", wchB);
          ???asheet.addCell(labelC);
          ???// 合并第一行16個(gè)單元格為1個(gè)作為標(biāo)題欄
          ???asheet.mergeCells(0, 0, 15, 0);
          ???// 設(shè)置表頭
          ???labelC = new Label(0, 1, "預(yù)報(bào)信息", tTitle);
          ???asheet.addCell(labelC);
          ???asheet.mergeCells(0, 1, 3, 1);

          ???labelC = new Label(0, 2, "檢查場(chǎng)", tTitle);
          ???asheet.addCell(labelC);

          ???labelC = new Label(1, 2, "車型", tTitle);
          ???asheet.addCell(labelC);

          ???labelC = new Label(2, 2, "車號(hào)", tTitle);
          ???asheet.addCell(labelC);

          ???labelC = new Label(3, 2, "軸位及左右", tTitle);
          ???asheet.addCell(labelC);

          ???labelC = new Label(4, 1, "作業(yè)場(chǎng)處理信息", tTitle);
          ???asheet.addCell(labelC);
          ???asheet.mergeCells(4, 1, 15, 1);

          ???labelC = new Label(4, 2, "預(yù)警級(jí)別", tTitle);
          ???asheet.addCell(labelC);

          ???labelC = new Label(5, 2, "檢查時(shí)間", tTitle);
          ???asheet.addCell(labelC);

          ???labelC = new Label(6, 2, "車次", tTitle);
          ???asheet.addCell(labelC);

          ???labelC = new Label(7, 2, "編組", tTitle);
          ???asheet.addCell(labelC);

          ???labelC = new Label(8, 2, "順位", tTitle);
          ???asheet.addCell(labelC);

          ???labelC = new Label(9, 2, "輪位", tTitle);
          ???asheet.addCell(labelC);

          ???labelC = new Label(10, 2, "軸號(hào)", tTitle);
          ???asheet.addCell(labelC);

          ???labelC = new Label(11, 2, "故障原因", tTitle);
          ???asheet.addCell(labelC);

          ???labelC = new Label(12, 2, "實(shí)際測(cè)量數(shù)據(jù)", tTitle);
          ???asheet.addCell(labelC);

          ???labelC = new Label(13, 2, "測(cè)量人", tTitle);
          ???asheet.addCell(labelC);

          ???labelC = new Label(14, 2, "復(fù)測(cè)人", tTitle);
          ???asheet.addCell(labelC);

          ???labelC = new Label(15, 2, "處理方式", tTitle);
          ???asheet.addCell(labelC);
          ???wwb.write();
          ???wwb.close();
          ???flag = true;
          ??} catch (Exception e) {
          ???flag = false;
          ???e.printStackTrace();
          ??}
          ??return flag;
          ?}
          注:1.???說明asheet.mergeCells(列1, 行1, 列2, 行2)合并單元格,起始都是0
          ???? 2 .? 在Bean中需要導(dǎo)入兩個(gè)jar包servlet.jar和jxl.jar

          posted on 2007-03-30 15:15 JJCEA 閱讀(1374) 評(píng)論(0)  編輯  收藏 所屬分類: java日記
          主站蜘蛛池模板: 泗阳县| 朝阳区| 双流县| 三都| 阿合奇县| 体育| 扶沟县| 绍兴县| 芦溪县| 烟台市| 米泉市| 西青区| 潜山县| 日照市| 聂拉木县| 正定县| 玉门市| 达日县| 碌曲县| 通江县| 年辖:市辖区| 广西| 德江县| 沂南县| 阜新市| 甘泉县| 怀宁县| 普安县| 凤城市| 天等县| 新乐市| 明水县| 兴海县| 玉屏| 绍兴市| 广饶县| 长葛市| 金昌市| 铜川市| 牟定县| 蓝山县|