有的时候我们POI操作Excel时,需要将Excel单元格的内容设置为多种样式,比如:设置单元格的内容为两种颜色,方法如下:
//定义字体 HSSFFont redFont = (HSSFFont) workbook.createFont(); redFont.setColor(HSSFColor.RED.index);// 红色 HSSFFont blueFont = (HSSFFont) workbook.createFont(); redFont.setColor(HSSFColor.BLUE.index);// 蓝色 //创建一个单元格 HSSFCell hssfCell = row.createCell(idx); //创建富文本字符串,内容为:Hello,World! HSSFRichTextString richString = new HSSFRichTextString( "Hello, World!" ); //对"Hello,"设置redFont字体 richString.applyFont( 0, 6, redFont ); //对"World!"设置blueFont字体 richString.applyFont( 6, 13, blueFont ); //将富文本字符串设置到单元格中 hssfCell.setCellValue( richString );
注意:对于Excel2003及以下版本,设置过多的HSSFRichTextString,在保存文件时,可能会导致程序崩溃。
想要了解更多内容,请参见:https://poi.apache.org/apidocs/org/apache/poi/hssf/usermodel/HSSFRichTextString.html
原文:http://blog.csdn.net/accp_fangjian/article/details/43156585