POI excel 单元格内文字分段加下划线

在开发的过程中,可能会遇到这样的问题,单元格内的文字分段加下划线

例如,输出的数据是下面这样

_aaaaaa_       _BBBBB_

要求数据输出到同一个单元格内,并且aaaaaa加下滑线,BBBB也要加下划线,但是中间的空位不能有下划线。

使用POI 中的HSSFRichTextString对象就能实现上述要求。

代码片段

 创建Font()

 public Font getFont() {
  Font font = workbook.createFont();
  font.setUnderline(Font.U_SINGLE); //下划线
  return font;
 }

加入下划线

private HSSFRichTextString UnderLineIndex(StringBuffer detail1, Font font) {
      HSSFRichTextString richString = null;
      richString = new HSSFRichTextString(detail.toString());
      richString.applyFont(1, 6, font);  //下划线的起始位置,结束位置
      richString.applyFont(6, 11, font);

       return richString;
 }

设定单元格

cell.setCellValue(UnderLineIndex(new StringBuffer(content), getFont()));

 

你可能感兴趣的:(POI excel 单元格内文字分段加下划线)