Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/339.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用POI恢复单元格中的粗体文本_Java_Excel_Apache Poi_Xls - Fatal编程技术网

Java 使用POI恢复单元格中的粗体文本

Java 使用POI恢复单元格中的粗体文本,java,excel,apache-poi,xls,Java,Excel,Apache Poi,Xls,我试图检查单元格(Excel文件)中的文本是否为粗体。 目前我正在使用: final CellStyle cellStyle = row.getCell(cellIndex).getCellStyle().toString(); 这并没有给出任何关于粗体文本的信息。但是我已经看到getCellStyle()拥有几种方法,比如“getFontIndex()”。是否有人知道文本是否粗体?这有点复杂,但包含粗体属性的是字体,而不是单元格样式。不过,您可以通过迂回的方式从CellStyle检索它 Wo

我试图检查单元格(Excel文件)中的文本是否为粗体。 目前我正在使用:

final CellStyle cellStyle = row.getCell(cellIndex).getCellStyle().toString();

这并没有给出任何关于粗体文本的信息。但是我已经看到getCellStyle()拥有几种方法,比如“getFontIndex()”。是否有人知道文本是否粗体?

这有点复杂,但包含粗体属性的是
字体,而不是
单元格样式。不过,您可以通过迂回的方式从
CellStyle
检索它

Workbook book = row.getSheet().getWorkbook();
CellStyle style = row.getCell(cellIndex).getCellStyle();
int fontIndex = style.getFontIndex();
Font font = book.getFontAt(fontIndex);
if (font.getBold()) {
    // if you are here, the font is bold
}
这将告诉您
CellStyle
是否包含粗体字体。单元格中的文本可以是
RichTextString
,也可以是与
CellStyle
中指定的字体完全不同的字体。但是,
RichTextString
支持还不完整,因此如果需要,您必须进行一些转换以从中检索字体