参考文章: https://blog.csdn.net/lipinganq/article/details/78090553

poi版本: 3.17

Excel列宽单位概述

POI中Sheet列宽是通过字符个数来确定的,列宽单位为一个字符宽度的1/256 
每列可以显示的最大字符数为255

// 设置默认列宽,width为字符个数
sheet.setDefaultColumnWidth(int width)// 设置第columnIndex+1列的列宽,单位为字符宽度的1/256
sheet.setColumnWidth(int columnIndex, int width)
// 设置第5列的列宽为20个字符宽度
sheet.setColumnWidth(4, 20*256)

实际代码    注意 ,第一列的index为0 , 即 sheet.setColumnWidth(0,40*256);,此时设置的第一列

@RequestMapping(value = "/exportJournalExcle")public void exportJournalExcle(PoliceJournalDTO policeJournalDTO, HttpServletRequest request,HttpServletResponse response) {try {LoginBean lb = this.getLoginBean();String accountId = lb.getAccountID();String realName = lb.getRealName();policeJournalDTO.setName(realName);policeJournalDTO.setPoliceAlarm(accountId);// 导出excle的集合数据List<PoliceJournalRDTO> listExcleJournal = policeJournalSer.listOfPoliceJournalExcle(policeJournalDTO);// 生成excle文件HSSFWorkbook hssfWorkbook = new HSSFWorkbook();HSSFSheet sheet = hssfWorkbook.createSheet("日志");//设置默认的列宽为10个字符 sheet.setDefaultColumnWidth(10);
//          sheet.setColumnWidth(2, 12*256);
//          sheet.setColumnWidth(3, 12*256);//设置4,5,11列为20个字符 sheet.setColumnWidth(4, 20*256);sheet.setColumnWidth(5, 20*256);
//          sheet.setColumnWidth(6, 12*256);sheet.setColumnWidth(11, 20*256);// 表头HSSFRow headRow = sheet.createRow(0);headRow.createCell(0).setCellValue("姓名");headRow.createCell(1).setCellValue("");headRow.createCell(2).setCellValue("");headRow.createCell(3).setCellValue("");headRow.createCell(4).setCellValue("");headRow.createCell(5).setCellValue("");headRow.createCell(6).setCellValue("");headRow.createCell(7).setCellValue("");headRow.createCell(8).setCellValue("");headRow.createCell(9).setCellValue("");headRow.createCell(10).setCellValue("");headRow.createCell(11).setCellValue("");if (listExcleJournal != null && listExcleJournal.size() > 0) {for (PoliceJournalRDTO journalRDTO : listExcleJournal) {HSSFRow dataRow = sheet.createRow(sheet.getLastRowNum() + 1);if (!StringUtils.isBlank(journalRDTO.getRealName())) {dataRow.createCell(0).setCellValue(journalRDTO.getRealName());}if (!StringUtils.isBlank(journalRDTO.getAccountID())) {dataRow.createCell(1).setCellValue(journalRDTO.getAccountID());}// 日期格式转为字符串输出SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");if (journalRDTO.getJournalTime() != null) {String journalTime = sdf.format(journalRDTO.getJournalTime());dataRow.createCell(2).setCellValue(journalTime);}if (journalRDTO.getEntryTime() != null) {String entryTime = sdf.format(journalRDTO.getEntryTime());dataRow.createCell(3).setCellValue(entryTime);}if (!StringUtils.isBlank(journalRDTO.getWorkType())) {dataRow.createCell(4).setCellValue(journalRDTO.getWorkType());}if (!StringUtils.isBlank(journalRDTO.getJobContent())) {dataRow.createCell(5).setCellValue(journalRDTO.getJobContent());}}}}// 下载文件,设置两个头,一个流// 下载导出,设置头信息response.setContentType("application/vnd.ms-excel");// 文件名String filename = "日志.xls";// 浏览器的名称String agent = request.getHeader("user-agent");filename = FileUtils.encodeDownloadFilename(filename, agent);response.setHeader("Content-Disposition", "attachment;filename=" + filename);OutputStream outputStream;outputStream = response.getOutputStream();hssfWorkbook.write(outputStream);outputStream.close();hssfWorkbook.close();} catch (Exception e) {e.printStackTrace();}}

导出的效果如下图, 可以看到设置了额外的列宽的, 宽度增加了.

POI Excel设置列宽相关推荐

  1. java设置列宽_javaexcel如何设置指定列宽

    Java 开发过程当中经常会遇到java表格操作的场景.如何实现轻松.快捷的设置列宽呢,下面让学习啦小编为你带来javaexcel设置指定列宽的方法. javaexcel设置指定列宽的方法: 方法1 ...

  2. javaweb使用poi下载excel设置样式、合并单元格、设置列宽

    @Overridepublic void exportMajorInfo(@RequestBody StudentInfoDto studentInfoDto) {// 至少存在4列int miniC ...

  3. excel2010设置列宽为像素_使用像素单位设置 EXCEL 列宽或行高

    在导出 Excel 的时候, 经常要需要给列设置宽度或给行设置高度, 在使用 NPOI 或 EppPlus 等组件进行操作的时候, 列宽和行高的单位都不是像素, 好像是英寸,具体是啥也说不清. 平常在 ...

  4. excel2010设置列宽为像素_怎么改变Excel中列宽的像素

    展开全部 1.打开EXCEL工作bai簿,在[du开始]选项卡-[单zhi元格]功能组中[格式]下拉dao列表中可以设置[行回高].列宽同样在这答里可以找到设置. 2.在行号上点鼠标右键,在弹出的快捷 ...

  5. java poi excel 单元格样式_java poi批量导出excel 设置单元格样式

    POI中可能会用到一些需要设置EXCEL单元格格式的操作小结: 先获取工作薄对象: HSSFWorkbook wb = new HSSFWorkbook(); HSSFSheet sheet = wb ...

  6. 黑马 - poi Excel

    3.poi入门操作 3.1 搭建环境 1 <dependency> 2 <groupId>org.apache.poi</groupId> 3 <artifa ...

  7. EasyExcel导出、按列设置样式、根据表头字数设置列宽、Converter转换

    文章目录 一.Excel导出实体类 二.自定义样式handler 三.servicesImple类中实现方法 四.表头设置列宽handler 五.Converter转换 一.Excel导出实体类 im ...

  8. POI Excel格式报表生成 同步下载问题解决

    前言 解决POI 导出功能,过时方法和新增样式放在最下面 或者参考下文 POI 样式调节 0.maven(新版本) <poi.version>4.1.2</poi.version&g ...

  9. (二)xlwt模块详解--设置列宽、行高

    第二篇博客是关于设置Excel中的列宽和行高. 废话不多说,直接上代码看效果! 1.设置列宽 xlwt中列宽的值表示方法:默认字体0的1/256为衡量单位.其创建时使用的默认宽度为2960,即11个字 ...

  10. excel设置行高_手把手教你用wps表格excel制作田字格书法练习字帖

    自己给孩子量身定制一个吧,跟着香哥走,手把手教你用wps表格excel制作田字格书法练习字帖,咱用的软件是wps表格. 第一步:设置列宽和行高,都为36磅. 第二步:选中四个方格,右键单击,在弹出的菜 ...

最新文章

  1. 交换机模拟配置软件_网络设备模拟器Packet Tracer实验
  2. java finalize逃脱_关于Java中的finalize()方法
  3. c语言 生成一维条形码,C# BarcodeLib。dll 生成一维码的问题
  4. 关于memcached的收集
  5. 解决IDEA中maven工程的jsp、jstl依赖导入了 ,但是 jsp页面的uri却不提示(手动输上也报红)
  6. Python与Java-你首选哪个?
  7. 软件测试用例优秀例子_新手入门:想要做好软件测试,这些理论知识,你得好好掌握...
  8. freemaker 快速入门
  9. HBuilderx中编译sass文件
  10. STC单片机免冷启/自动下载原理DIY免冷启烧录器(纯硬件版和软件版)
  11. 基于深度学习生成音乐
  12. ECharts3基础教程(一)简单上手篇
  13. 在埋头写程序学技术的同时,有没有想到你们的老板和上司在搞什么?
  14. 云计算机玩端游,拒绝万元显卡 云电脑玩端游又爽又省钱
  15. 新手学习电脑知识的一些方法 oldtimeblog
  16. 4G手机网络免费开通高清语音VoLTE
  17. Ubuntu 10.04 HP LaserJet 无法打印 **** Unable to open the initial device, quitting 错误
  18. 二进制调色器程序管理
  19. Netty——ByteBuffer(ByteBuffer消息粘包、半包示例)
  20. azdb文件怎么打开_az mysql db

热门文章

  1. 电信光纤猫虚拟服务器设置方法,电信光纤猫怎么设置宽带拨号?
  2. 未来规划——北京大学数院432应用统计备考攻略
  3. 电脑x64和x86安装软件的区别讲解分享
  4. python文档:控制流(if,for,函数,lambda等)
  5. 防火门行业研究及十四五规划分析报告
  6. 任务一:实现图形计算功能 1 关键算法(30 分)输入一个正方体的边长(a)计算正方体的体积。要求:结果保留两位小数,使用带参数的方法实现
  7. ASCII码对照表--符号/十进制/十六进制
  8. CSS相对定位和绝对定位
  9. [转载]JTree 编辑、删除、添加节点_-Chaz-_新浪博客
  10. 修改程序版本工具(ResHacker)使用说明20140902