Java利用POI生成Excel强制换行

前一段时间在做一个学校排课系统时,有一个地方需要利用把课程表生成excel汇出给客户,由于之前用excel都只是简单的应用,在单元格里都是用自动换行,而这次可能需要用到手动强制换行。
于是我在网上找了一下,网上找到的文章都是说在excel里的文字里加上\n,\n\r,\r\n之类,反正各种各样的都有,更奇怪的是还有人说在单元格里加上<br>
后来我试过用\r后的效里是生成的文件里,你用打开时,并不会换行,如果你用鼠标在单元格里点一下之后就会自动换行。

后来我琢磨了一下,可以通过如下方式进行,
1. 首先在需要强制换行的单元格里使用poi的样式,并且把样式设定为自动换行
Java代码

   1. HSSFCellStyle cellStyle=workbook.createCellStyle();    
   2. cellStyle.setWrapText(true);    
   3. cell.setCellStyle(cellStyle); 

HSSFCellStyle cellStyle=workbook.createCellStyle();    cellStyle.setWrapText(true);    cell.setCellStyle(cellStyle);


2. 其次是在需要强制换行的单元格,使用\就可以实再强制换行
Java代码

   1. HSSFCell cell = row.createCell((short)0); 
   2. cell.setCellStyle(cellStyle);    cell.setCellValue(new HSSFRichTextString("hello\r\n world!")); 

HSSFCell cell = row.createCell((short)0); cell.setCellStyle(cellStyle);       cell.setCellValue(new HSSFRichTextString("hello\r\n world!"));



这样就能实现强制换行,
换行后的效里是单元格里强制换行
hello
world!


轉于:http://hi.baidu.com/lovetojava/blog/item/34e71812e757e0daf7039eec.html

你可能感兴趣的:(java,html,Excel,Blog)