在使用Apache的POI库生成EXCEL文件时,经常会遇到这样的情况:使用不同的格式格式化一个单元格中的内容,比如说:一个单元格的内容是“first, second”,现在要分别使用红色带删除线格式化"first", 使用蓝色格式化“second",在这种情况下可以使用HSSFRichText来实现这一目的,下面的代码简单的示例了上述需求的实现:

 //创建工作簿
HSSFWorkbook wb = new HSSFWorkbook();
//创建工作表
HSSFSheet sheet = wb.createSheet();
//为工作表添加行
HSSFRow row = sheet.createRow(0);
//添加单元格
HSSFCell cell = row.createCell(0);
//创建字体
HSSFFont ftRed = wb.createFont();
ftRed.setStrikeout(true);
ftRed.setColor(HSSFColor.RED.index); HSSFFont ftBlue = wb.createFont();
ftBlue.setColor(HSSFColor.BLUE.index);
//往单元格中写入的内容,并使用ft格式化"second"单词
String[] subStr = {
"first", "second"
};
String sText = subStr[0] + "," + subStr[1];
HSSFRichTextString textString = new HSSFRichTextString(sText);
textString.applyFont(
sText.indexOf(subStr[0]),
sText.indexOf(subStr[0]) + subStr[0].length(),
ftRed
);
textString.applyFont(
sText.indexOf(subStr[1]),
sText.indexOf(subStr[1]) + subStr[1].length(),
ftBlue
);
cell.setCellValue(textString);

上述代码片段的生成效果为:

Apache文档对HSSFRichTextString的说明文档:https://poi.apache.org/apidocs/org/apache/poi/hssf/usermodel/HSSFRichTextString.html

【Java】POI的HSSFRichTextString介绍的更多相关文章

  1. 重构:以Java POI 导出EXCEL为例

    重构 开头先抛出几个问题吧,这几个问题也是<重构:改善既有代码的设计>这本书第2章的问题. 什么是重构? 为什么要重构? 什么时候要重构? 接下来就从这几个问题出发,通过这几个问题来系统的 ...

  2. java poi操作excel 添加 锁定单元格保护

    Excel的book保护是很常用的,主要是不想让别人修改Excel的时候用.这样能够避免恶意随便修改数据,提高数据的可信度. 下面介绍JAVA POI来实现设置book保护: 使用HSSFSheet类 ...

  3. java POI excel 导出复合样式(一个单元格两个字体)

    前言:java poi 导出 excel 时,需要设置一个单元格有多个字体样式,有点类似于富文本. 想要达到的效果(一个单元格里): 我使用的 poi 版本是 <dependency> & ...

  4. 在java poi导入Excel通用工具类示例详解

    转: 在java poi导入Excel通用工具类示例详解 更新时间:2017年09月10日 14:21:36   作者:daochuwenziyao   我要评论   这篇文章主要给大家介绍了关于在j ...

  5. 如何把word文档导入到数据库中——java POI

    本文方法借鉴于https://www.cnblogs.com/ljysy/p/10574197.html 在经过朋友的指导下,在处理文档的方式上有所不同. 我的数据库使用的是SQL server,这篇 ...

  6. microsoft docx document operation with Java POI library

    microsoft docx document operation with Java POI library combine multiple docx document into one docu ...

  7. java web服务器tomcat介绍【转载】

    机器矩阵2016-08-10 22:14 java程序员亲切地称他为tom猫,看到这只猫可以说明1 服务器部署成功了 ,2 网络是联通的. 到底这只猫是什么来头呢? tomcat是Apache基金会下 ...

  8. 使用Java POI来选择提取Word文档中的表格信息

    通过使用Java POI来提取Word(1992)文档中的表格信息,其中POI支持不同的ms文档类型,在具体操作中需要注意.本文主要是通过POI来提取微软2003文档中的表格信息,具体code如下(事 ...

  9. Java常用日志框架介绍

    Java常用日志框架介绍 java日志概述 对于一个应用程序来说日志记录是必不可少的一部分.线上问题追踪,基于日志的业务逻辑统计分析等都离不日志.java领域存在多种日志框架,目前常用的日志框架包括L ...

随机推荐

  1. bootsrtap带表格面板内容居中

    css中,添加 .table th, .table td { text-align: center; vertical-align: middle!important;}

  2. 【LG3235】 [HNOI2014]江南乐

    题目描述 给出\(n\)堆石子, 每次可以选择将大于某个数\(f\)一堆平均分成多个堆, 最后不能操作的失败. 题解 10pts 直接爆搜即可. 70pts 像我们对这类题目的常规操作那样,将一整个局 ...

  3. 180730-Spring之RequestBody的使用姿势小结

    Spring之RequestBody的使用姿势小结 SpringMVC中处理请求参数有好几种不同的方式,如我们常见的下面几种 根据 HttpServletRequest 对象获取 根据 @PathVa ...

  4. 关于scrum敏捷测试

    关于scrum的一些定义 敏捷软件开发方法是一种把新增功能通过较小的循环逐步迭代添加到项目中(的项目管理方法),工作是由自我组织的团队以高效合作的方式拥抱和适应变化来保证客户需求被真正满足的方式来完成 ...

  5. 如何理解IPD+CMMI+Scrum一体化研发管理解决方案之Scrum篇

    如何快速响应市场的变化,如何推出更有竞争力的产品,如何在竞争中脱颖而出,是国内研发企业普遍面临的核心问题,为了解决这些问题,越来越多的企业开始重视创新与研发管理,加强研发过程的规范化,集成产品开发(I ...

  6. 常用 php server

    php编程中经常需要用到一些服务器的一些资料,我把常用的用高亮的方式贴出来,其余的放在后面.方便以后查阅     复制代码代码如下: $_SERVER['HTTP_ACCEPT_LANGUAGE']/ ...

  7. Coin Game

    Problem Description After hh has learned how to play Nim game, he begins to try another coin game wh ...

  8. 学霸系统UI部分功能规格说明书

        发布人员:软件工程实践小队    发布内容:学霸系统UI部分功能规格说明书    版本:学霸V1.1版本         ◆Part 1:引言 1.1目的    本功能规格说明书的目的在于明确 ...

  9. UML设计(团队作业6)

    决胜 Poker 一.团队成员 学号 姓名 211606392 郑俊瑜 (队长) 211606327 冉繁盛 211606323 刘世华 211606386 姚皓钰 211606358 陈卓楠 211 ...

  10. linux awk,sort,uniq,wc,cut命令详解

    1.awk awk是行处理器: 相比较屏幕处理的优点,在处理庞大文件时不会出现内存溢出或是处理缓慢的问题,通常用来格式化文本信息 $ 表示当前行 $ 表示第一列 NF 表示一共有多少列 $NF 表示最 ...