导出excel时需要在单元格进行强制换行2003与2007方法一样
2016-12-19 16:00
387 查看
最近在做导出excel时需要在单元格进行强制换行,查找资料,总结如下:
自动换行的设置:
[html] view
plain copy
HSSFCellStyle cellStyle=workbook.createCellStyle();
cellStyle.setWrapText(true);
cell.setCellStyle(cellStyle);
强制换行:
[html] view
plain copy
<pre name="code" class="html">HSSFCell cell = row.createCell((short)0);
cell.setCellStyle(cellStyle);
cell.setCellValue(new HSSFRichTextString("hello\r\n world!"));
导出的报表好如下图,编辑框显示的是换行,但是单元格显示不换行:
修改代码如码如下
[html] view
plain copy
HSSFCell cell = row.createCell((short)0);
cellStyle.setWrapText(true);//先设置为自动换行
cell.setCellStyle(cellStyle);
cell.setCellValue(new HSSFRichTextString("hello\r\n world!"));
导出的报表为:
另注:我原本是打算用sql语句拼接一个含“\r\n”的字段,赋值给单元格,使其强制换行,但是结果只是显示一个字符串,并未换行,最后解决方法是在给单元格赋值的时候拆分字符串,再用str1+"\r\n"+str2拼接,单元格才会正确显示换行。
不太清楚原因。
自动换行的设置:
[html] view
plain copy
HSSFCellStyle cellStyle=workbook.createCellStyle();
cellStyle.setWrapText(true);
cell.setCellStyle(cellStyle);
强制换行:
[html] view
plain copy
<pre name="code" class="html">HSSFCell cell = row.createCell((short)0);
cell.setCellStyle(cellStyle);
cell.setCellValue(new HSSFRichTextString("hello\r\n world!"));
导出的报表好如下图,编辑框显示的是换行,但是单元格显示不换行:
修改代码如码如下
[html] view
plain copy
HSSFCell cell = row.createCell((short)0);
cellStyle.setWrapText(true);//先设置为自动换行
cell.setCellStyle(cellStyle);
cell.setCellValue(new HSSFRichTextString("hello\r\n world!"));
导出的报表为:
另注:我原本是打算用sql语句拼接一个含“\r\n”的字段,赋值给单元格,使其强制换行,但是结果只是显示一个字符串,并未换行,最后解决方法是在给单元格赋值的时候拆分字符串,再用str1+"\r\n"+str2拼接,单元格才会正确显示换行。
不太清楚原因。
相关文章推荐
- mysql的grant权限
- Windows自带截图工具
- 谁才是真正的垃圾:判断对象的可触及性
- ansibe tower的开源替代品semaphore
- 安卓手势触摸处理(touch和scroll)
- 读书笔记--自定义View --开发艺术探索
- jquery.validate表单验证
- 设计模式-行为性设计模式:访问者模式 Visitor
- git tag到远程
- Vue多种方法实现表头、首列固定
- Sublime Text 2搭建Java开发环境
- 使用maven编译spark源码
- svn + post-commit 实时测试php代码
- VS2013 编译XPdf
- HTTPS和HTTP的区别
- usaco2.4.4 Bessie Come Home
- 渗透测试教程(基础篇)-2
- zabbix-proxy重启无效(无法开启服务)
- 拷贝构造函数
- Android 关闭应用程序的方法