Java导出EXCEL 文本 表格

简介: Java导出EXCEL 文本 表格


Java导出EXCEL 文本 表格


导出表格controller

  @RequestMapping(value = "/downloadTemplate")
  public String downloadTemplate(HttpServletRequest request, HttpServletResponse response) throws IllegalArgumentException, IllegalAccessException, InvocationTargetException, IntrospectionException, IOException {
    //查询需要导出的数据
    String[] columnArr = {"*姓名", "*学号", "手机号", "身份证号", "性别"};
    //导出题目Excel创建HSSFWorkbook
    XSSFWorkbook wb = userBaseInfoFromExcelService.createTemplateHSSFWorkbook(columnArr);
    // 将文件保存到指定位置
    response.setContentType("APPLICATION/OCTET-STREAM");
    SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
    String titleStr = "模板" + dateFormat.format(new Date());
    String title = new String(titleStr.getBytes("gb2312"),"iso-8859-1");
    response.setHeader( "Content-Disposition" ,"attachment;filename=\"" + title + ".xlsx" + "\"" );
    OutputStream ouputStream = response.getOutputStream();
    wb.write(ouputStream);
    ouputStream.flush();
    ouputStream.close();
    return null;
  }


导出表格实现类

    @Override
    public XSSFWorkbook createTemplateHSSFWorkbook(String[] columnArr) throws IntrospectionException,
            IllegalArgumentException, IllegalAccessException,
            InvocationTargetException {
        // 第一步,创建一个webbook,对应一个Excel文件
        XSSFWorkbook wb = new XSSFWorkbook();
        // 第二步,在webbook中添加一个sheet,对应Excel文件中的sheet
        XSSFSheet sheet = wb.createSheet("模板");
        //设置cell格式为文本格式
        XSSFCellStyle cellStyle = wb.createCellStyle();
        XSSFDataFormat dataFormat = wb.createDataFormat();
        cellStyle.setDataFormat(dataFormat.getFormat("@"));
        // 设置列宽
        for (int i = 0,length = columnArr.length; i < length; i++) {
            sheet.setColumnWidth(i, 6000);
            //设置当前sheet格式为文本格式
            sheet.setDefaultColumnStyle(i,cellStyle);
        }
        // 设置字体大小
        XSSFFont font = wb.createFont();
        font.setFontHeightInPoints((short) 14);
        font.setBold(true);
        //font.setFontHeightInPoints((short) 12);
        // 第三步,在sheet中添加表头第0行,注意老版本poi对Excel的行数列数有限制short
        XSSFRow row = sheet.createRow((int) 0);
        row.setHeight((short) 400);
        // 第四步,创建单元格,并设置值表头 设置表头居中
        XSSFCellStyle style = wb.createCellStyle();
        // 设置字体样式
        style.setFont(font);
        // 设置表头居中
        style.setAlignment(XSSFCellStyle.ALIGN_CENTER); // 创建一个居中格式
        XSSFCell cell;
        for (int i = 0,length = columnArr.length; i < length; i++) {
            cell = row.createCell((short) i);
            cell.setCellValue(columnArr[i]);
            cell.setCellStyle(style);
        }
        return wb;
    }

相关文章
|
6月前
|
人工智能 缓存 自然语言处理
Java与多模态AI:构建支持文本、图像和音频的智能应用
随着大模型从单一文本处理向多模态能力演进,现代AI应用需要同时处理文本、图像、音频等多种信息形式。本文深入探讨如何在Java生态中构建支持多模态AI能力的智能应用。我们将完整展示集成视觉模型、语音模型和语言模型的实践方案,涵盖从文件预处理、多模态推理到结果融合的全流程,为Java开发者打开通往下一代多模态AI应用的大门。
523 41
|
8月前
|
移动开发 JavaScript
(H5查看CAD)网页CAD提取图纸表格到excel
本文介绍如何通过自定义MxCAD插件,在Web端智能识别CAD图纸中的表格,实现自动合并与高效导出至Excel,提升数据提取效率与准确性。内容涵盖区域选择、图形识别、表格结构重建、单元格合并及内容导出等关键技术,适用于工程图纸数据自动化处理场景。
|
JavaScript 前端开发 数据可视化
20.6K star!Excel级交互体验!这款开源Web表格神器绝了!
Handsontable 是一款功能强大的 JavaScript 数据表格组件,提供类 Excel 的交互体验。支持实时协作、数据绑定、公式计算等企业级功能,可轻松集成到 React/Vue/Angular 等主流框架。
2418 11
|
人工智能 数据可视化 前端开发
Probly:开源 AI Excel表格工具,交互式生成数据分析结果与可视化图表
Probly 是一款结合电子表格功能与 Python 数据分析能力的 AI 工具,支持在浏览器中运行 Python 代码,提供交互式电子表格、数据可视化和智能分析建议,适合需要强大数据分析功能又希望操作简便的用户。
1601 2
|
SQL 数据可视化 数据挖掘
想让Excel表格设计更美观?试试这几款好用工具!
Excel表格设计在项目管理和数据分析中至关重要。本文推荐四款辅助工具:板栗看板、Excel自动图表助手、Think-Cell Chart 和 Power BI,分别在任务管理、图表生成、数据可视化等方面表现突出,帮助你设计出更专业、美观的表格。
1682 2
|
Java API Apache
|
Java API Apache
Java编程如何读取Word文档里的Excel表格,并在保存文本内容时保留表格的样式?
【10月更文挑战第29天】Java编程如何读取Word文档里的Excel表格,并在保存文本内容时保留表格的样式?
1121 5
|
存储 Java API
Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载
Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载
1081 4
|
6月前
|
JSON 网络协议 安全
【Java】(10)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
303 1