使用Java POI 4.1.2,需要根据字体颜色进行判断,下面的方法只能获取只有一种颜色的字体,如果一个单元格内有两种以上颜色,好像是获取第一个颜色。

如果是Microsoft Excel 97-2003 工作表 (.xls)

if(31 == cell.getCellStyle().getFillForegroundColor()) //判断单元格前景色为淡蓝色
if(10 == book.getFontAt(cell.getCellStyle().getFontIndex()).getColor()) //判断单元格字体颜色为红色

如果是Microsoft Excel 工作表 (.xlsx)

if(0 == cell.getCellStyle().getFillForegroundColor()) //判断单元格前景色为淡蓝色
if(0 == book.getFontAt(cell.getCellStyle().getFontIndex()).getColor()) //判断单元格字体颜色为红色

具体的java示例代码如下:

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.DataFormatter;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;public class TestExcel {private static final DataFormatter FORMATTER = new DataFormatter();/*** 获取单元格内容** @param cell*            单元格对象* @return 转化为字符串的单元格内容*/private static String getCellContent(Cell cell) {return FORMATTER.formatCellValue(cell);}private static String getExcelValue(String filePath, int sheetIndex) {String value = "";try {// 创建对Excel工作簿文件Workbook book = null;try {book = new XSSFWorkbook(new FileInputStream(filePath));} catch (Exception ex) {book = new HSSFWorkbook(new FileInputStream(filePath));}Sheet sheet = book.getSheetAt(sheetIndex);// 获取到Excel文件中的所有行数int rows = sheet.getPhysicalNumberOfRows();// System.out.println("rows:" + rows);// 遍历行for (int i = 0; i < rows; i++) {// 读取左上端单元格Row row = sheet.getRow(i);// 行不为空if (row != null) {// 获取到Excel文件中的所有的列int cells = row.getPhysicalNumberOfCells();// System.out.println("cells:" + cells);// 遍历列for (int j = 0; j < cells; j++) {// 获取到列的值Cell cell = row.getCell(j);if (cell != null) {// if (31 ==// cell.getCellStyle().getFillForegroundColor() &&// 10 ==// book.getFontAt(cell.getCellStyle().getFontIndex()).getColor())if (0 == cell.getCellStyle().getFillForegroundColor()&& 0 == book.getFontAt(cell.getCellStyle().getFontIndex()).getColor())value += "第" + (i + 1) + "行 第" + (j + 1) + "列 的内容是: " + getCellContent(cell) + ",";}}}}} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}return value;}public static void main(String[] args) {String filePath = "F://example.xls";int sheetIndex = 0;String[] val = getExcelValue(filePath, sheetIndex).split(",");for (int i = 0; i < val.length; i++) {System.out.println(val[i]);}}
}

JAVA POI获取excel单元格红色字体,淡蓝色前景色的内容相关推荐

  1. Java poi操作Excel单元格样式

    Java poi设置Excel单元格格式设置 XSSFWorkbook xwb = new XSSFWorkbook();或者 XSSFWorkbook xwb = new XSSFWorkbook( ...

  2. Java POI 导出 Excel 单元格 合并单元格 相邻的相同值 合并

    通过poi导出合并单元格 合并单元格 并合并相邻并相同值的单元格 poi依赖 <dependency><groupId>org.apache.poi</groupId&g ...

  3. poi 获取excel单元格超链接和设置excel单元格超链接及导出excel

    导入excel及需要的jar包看之前链接:https://blog.csdn.net/sipengfei_/article/details/88184964 先说一下导出的时候怎么给单元格设置超链接, ...

  4. java poi修改EXCEL单元格的内容

    因为我是对已经存在的excel表的内容进行修改,发现使用creatRow()方法设置的单元格会导致一整行都覆盖消失了,使用 sheet对象的 getRow(13).getCell(3) 方法可以返回C ...

  5. 【Java】Java POI 设置Excel单元格上下标

    背景 由于最近楼主做的是新冠检测相关的系统,其中有涉及导出Excel的需求.按平时封装的导出工具类基本也就满足了,但是最近来了一个要求某些列要有上下标,所以给大家贴出上下标的关键代码,以后抄作业的时候 ...

  6. 【poi第五节】poi设置Excel单元格边框 和 背景色,java设置Excel 单元格边框 和 背景色

    poi设置Excel单元格边框 和 背景色,java设置Excel 单元格边框 和 背景色 import org.apache.poi.hssf.usermodel.HSSFWorkbook; imp ...

  7. POI实现EXCEL单元格合并及边框样式

    POI实现EXCEL单元格合并及边框样式 下面例子为创建产生一个excel,合并单元格,然后为合并后的单元格添加边框 package test;import java.io.FileOutputStr ...

  8. 【poi第九节】poi操作excel 单元格的换行

    poi操作excel 单元格的换行 import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermo ...

  9. POI获取合并单元格的值

    POI获取合并单元格时,如果是遍历获取合并单元格的所有子单元格的值,office的excel都会有值,wps的excel只会第一个子单元格有值,其他子单元格都没值,即cell=null.故意凡是获取合 ...

最新文章

  1. DWORD dwSendTime =::GetTickCount();
  2. 使用QueueUserAPC线程注入,
  3. matlab中循环读入文件内容,[转载]Matlab利用load循环读入数据文件
  4. matlab中如何创建使用构架数组?
  5. 对比AppScan Source和Fortify扫描AltoroJ的结果
  6. Vue工程引入openlayers组件的方法
  7. 【HAVENT原创】前端使用 jsrsasign 进行 RSA 加密、解密、签名、验签
  8. uniapp使用阿里巴巴在线图标库
  9. 大数据管理平台-数据处理与数据集市
  10. 树莓派3自带了wifi
  11. 笔记本重装win7旗舰版原版操作系统
  12. 从特斯拉AI团队学到的九条方法论
  13. HTAP的下一步?SoTP初探(上):从“大”数据到“小”而“宽”数据
  14. 5分钟让你明白金融危机爆发原因
  15. HONOR Magicbook 进不了系统
  16. 计算机有两个桌面,你好,我的电脑有两个桌面怎么处理
  17. 高效的敏捷测试第四课 测试的团队协作
  18. 第十二周练兵区——编程题——不计入总分
  19. mac下安装iso软件
  20. 美丽诗文背诵-未完待续

热门文章

  1. krpano php,krpano调试模式的开启
  2. 【Qt5 for VS】关于出现 Qt platform plugin windows 运行错误的解决方案
  3. 2018富途证券前端实习面试总结
  4. 【WCN6856】WiFi 5G 接口启动失败问题解决
  5. 极限思想在计算机中的应用,数学极限思想的应用论文(共2篇)
  6. 【苹果推群发iMessage推】软件安装它起首将消息发送到Apple Push服务器,而后Apple Push服务器将消息发送到装配了应用程序的手机
  7. 天清江月白,心静海鸥知
  8. 32python腾讯位置大数据2.0版本成功输出北京位置数据(续接上2019年8月21日停止服务的内容)
  9. 8.HTML标签-表格标签table
  10. 电池高压安全注意事项