poi导出Execl报表

 public void exportExcel(List<Rule> ruleList) {
        String[] title = { "名字", "规则组Id",
                "渠道", "规则版本号",
                "规则备注", "规则内容", "操作人", "创建时间",
                "更新时间"
        };
        // 创建一个工作簿
        HSSFWorkbook workbook = new HSSFWorkbook();
        // 创建一个工作表sheet
        HSSFSheet sheet = workbook.createSheet();
        // 设置列宽
        setColumnWidth(sheet, 9);
        // 创建第一行
        HSSFRow row = sheet.createRow(0);
        // 创建一个单元格
        HSSFCell cell = null;
        // 创建表头
        for (int i = 0; i < title.length; i++) {
            cell = row.createCell(i);
            // 设置样式
            HSSFCellStyle cellStyle = workbook.createCellStyle();
          //  cellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 设置字体居中
            cellStyle.setAlignment(HorizontalAlignment.CENTER);//水平居中
            // 设置字体
            HSSFFont font = workbook.createFont();
            font.setFontName("宋体");
         //   font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);// 字体加粗
            // font.setFontHeight((short)12);
            font.setFontHeightInPoints((short) 13);
            cellStyle.setFont(font);
            cell.setCellStyle(cellStyle);

            cell.setCellValue(title[i]);
        }

        for (int i = 1; i < (ruleList.size() + 1); i++) {
            // 创建第i行
            HSSFRow nextRow = sheet.createRow(i);
            for (int j = 0; j < 9; j++) {
                Rule rule= ruleList.get(i-1);     //获得查出来的集合中的对象
                HSSFCell cell2 = nextRow.createCell(j);
                if (j == 0) {
                    cell2.setCellValue((rule.getName()));   //获取字段
                }
                if (j == 1) {
                    cell2.setCellValue((rule.getGroupId()!=null)?rule.getGroupId():1);
                }
                if (j == 2) {
                    cell2.setCellValue((rule.getChannel()!=null)?rule.getChannel():null);
                }
                if (j == 3) {
                    cell2.setCellValue(rule.getVersion());
                }
                if (j == 4) {
                    cell2.setCellValue((rule.getRemarks()!=null)?rule.getRemarks():null);
                }
                if (j == 5) {
                    cell2.setCellValue((rule.getContentList()!=null&&rule.getContentList().size()>0)? JSONArray.toJSONString(rule.getContentList()):null);
                }
                if (j == 6) {
                    cell2.setCellValue((rule.getOperator()!=null)?rule.getOperator():null);
                }
                if (j == 7) {
                    cell2.setCellValue((rule.getCreateTime()!=null)?rule.getCreateTime():null);
                }
                if (j == 8) {
                    cell2.setCellValue(rule.getUpdateTime());
                }
            }
        }
        // 创建一个文件
        File file = new File("E:/1.xls");
        try {
            file.createNewFile();
            // 打开文件流
            FileOutputStream outputStream = FileUtils.openOutputStream(file);
            workbook.write(outputStream);
            outputStream.close();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

    // 设置列宽()
    private static void setColumnWidth(HSSFSheet sheet, int colNum) {
        for (int i = 0; i < colNum; i++) {
            int v = 0;
            v = Math.round(Float.parseFloat("15.0") * 37F);
            v = Math.round(Float.parseFloat("20.0") * 267.5F);
            sheet.setColumnWidth(i, v);
        }
    }
全部评论

相关推荐

没有offer的小土豆:专业面试一般是分配面试官然后联系你面试 应该是还没给你分配对应面试官
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务