poi使用

发布时间:2024年01月23日

? ? ? ? 一、poi的基本使用?

? ? ? ? 创建工作簿对象?

HSSFWorkbook workbook = new HSSFWorkbook();

? ? ? ?//?通过easypoi导入模板(还没研究明白)

 TemplateExportParams params = new TemplateExportParams("ftl/supervisionProject.xls");

????????创建工作表对象?

 HSSFSheet sheet = workbook.createSheet();

????????? ?创建工作表的行?

HSSFRow row = sheet.createRow(0);
createRow(0); //表示第一行

?????????创建单元格并设置值

row.createCell(0).setCellValue("2024年1月基本情况表");

?????????设置字体?

HSSFCellStyle style = workbook.createCellStyle();
HSSFFont font = workbook.createFont();
font.setFontHeightInPoints((short) 26); // 设置字体大小
font.setFontName("方正小标宋_GBK");
style.setFont(font); //将字体应用到样式中

??????????设置水平居中

HSSFCellStyle style = workbook.createCellStyle();
style.setAlignment(HorizontalAlignment.CENTER); // 水平居中
// 将样式应用到单元格上
row.getCell(0).setCellStyle(style);

getCell(0) 意思为这一行的第一个单元格,将刚才设置的style给到这个行对象

?????????合并单元格?

CellRangeAddress region = new CellRangeAddress(0, 0, 0, 24);
sheet.addMergedRegion(region);

?CellRangeAddress(0, 0, 0, 24); 里面的参数:开始行数,结束行数,开始列,结束列

? ? ? ? 如果要合并序号这个单元格,就需要(2,?3,?0,?0);

? ? ? ? 获取到行的单元格,setCellValue给这个单元格赋值

row.createCell(0).setCellValue

? ? ? ? 打开文件流输出表格

 FileOutputStream out = new FileOutputStream("D:\\AAAAA\\" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()).toString() + ".xls");
        workbook.write(out);
        out.close();

????????二、页面导出(没写完)

public void exportFile(String cityId, Date filingTime, HttpServletRequest request, HttpServletResponse response) 

? ? ? ? 需要获取HttpServletResponse 返回体中存入文件信息

 String fileName = "xxxxxx.xls";
            String tplType = "ftl/supervisionProject.ftl";
            response.reset();
            response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
            response.setCharacterEncoding("utf-8");
            response.setHeader("Content-Disposition", "attachment; filename=" + URLEncoder.encode(fileName, "UTF8"));

文章来源:https://blog.csdn.net/weixin_51722520/article/details/135783487
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。