excel 显示html标签,POI Excel 上下标处理(sub,sup的HTML标签转化到excel格式)

本文介绍如何使用Apache POI库处理Excel中的HTML标签,特别是上下标``和``。通过解析字符串中的标签,应用相应的字体样式,使Excel能够正确显示上下标内容,而不仅仅是显示HTML标签。
摘要由CSDN通过智能技术生成

用Apache POI把文字信息输出到Excel的时候,遇到如图的情况。HTML中这些上标下标是用‘’包起来的

那么要导出到excel,如何让excel里面也显示如图的样子,而不是直接显示那些标签呢?

9106c8472d3b

sup

9106c8472d3b

sub

话不多说,先导包:

org.apache.poi

poi-ooxml

3.16

核心的代码就是:

String content="aaa2ccc"

//生成workbook

HSSFWorkbook workbook = new HSSFWorkbook();

//生成sheet

HSSFSheet sheet = workbook.createSheet("sheet1");

//生成行row(第一行)

HSSFRow row = sheet.createRow(0);

//创建单元格(第一行第一格)

HSSFCell cell = row.createCell(0);

//生成富文本文字

HSSFRichTextString text = new HSSFRichTextString(content);

//生成字体

HSSFFont ft = workbook.createFont();

//设置下标字体,sup的话此处设置HSSFFont.SS_SUPER

ft.setTypeOffset(HSSFFont.SS_SUB);

//设置字体生效的位置区间,content字符串去掉sub标签之后,第四个字符需要处理成下标,所以参数是3,4

//如果是content="aaa23ccc",位置参数就是3,5,不同位置可多次调用applyFont方法

text.applyFont(3,4,ft);

cell.setCellValue(text);

//TODO 输出文件

......

了解核心代码之后,需要做的就是解析字符串中的标签,然后按照这个方

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值