博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JAVA poi操作EXCEL
阅读量:5878 次
发布时间:2019-06-19

本文共 710 字,大约阅读时间需要 2 分钟。

  hot3.png

设置单元格内数据自动换行需要两个条件:

一、单元格自动换行
CellStyle dataStyle = workbook.createCellStyle();
dataStyle.setWrapText(true);
二、需要换行的数据之间添加换行操作符"\r\n"
例如:"hello\r\nworld"

想要单元格内容完全显示的话,需要设置EXCEL列为自动列宽

workbook.getSheetAt(0).autoSizeColumn(0);
自动列宽时可能出现的问题:
1、自动列宽时英文和数字正常,如果是中文会出现显示不全,部分被遮盖
    如果想全部显示,则需要设置EXCEL为固定列宽
    a.获取字节数cellLength=value.getBytes().length;
        如果出现英文最后一个字符换行了,可以添加数值cellLength=value.getBytes().length+1;
    b.设置单元格宽度work.getWorkbook().getSheetAt(0).setColumnWidth(2, cellLength*256);

如果可选择为.xls或者.xlsx两种格式的话,输出到EXECL中时,两个版本的默认字体不同,会导致显示结果不一样,为了达到相同的显示效果,可以自动设置字体。

Font font = workbook.createFont();
font.setItalic(true); //font.setFontName("宋体");
dataStyle.setFont(font);

转载于:https://my.oschina.net/yunuo/blog/164195

你可能感兴趣的文章
PHP盛宴——经常使用函数集锦
查看>>
重写 Ext.form.field 扩展功能
查看>>
Linux下的搜索查找命令的详解(locate)
查看>>
福利丨所有AI安全的讲座里,这可能是最实用的一场
查看>>
开发完第一版前端性能监控系统后的总结(无代码)
查看>>
Python多版本情况下四种快速进入交互式命令行的操作技巧
查看>>
MySQL查询优化
查看>>
【Redis源码分析】如何在Redis中查找大key
查看>>
关于链接文件的探讨
查看>>
android app启动过程(转)
查看>>
Linux—源码包安装
查看>>
JDK8中ArrayList的工作原理剖析
查看>>
安装gulp及相关插件
查看>>
如何在Linux用chmod来修改所有子目录中的文件属性?
查看>>
Applet
查看>>
高并发环境下,Redisson实现redis分布式锁
查看>>
乌克兰基辅一世遗修道院起火 现场火光照亮夜空
查看>>
[iOS 10 day by day] Day 2:线程竞态检测工具 Thread Sanitizer
查看>>
Centos/Ubuntu下安装nodejs
查看>>
关于浏览器的cookie
查看>>