Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/369.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在excel中应用样式_Java_Apache Poi - Fatal编程技术网

Java 未使用POI在excel中应用样式

Java 未使用POI在excel中应用样式,java,apache-poi,Java,Apache Poi,我正在使用POI突出显示excel工作表中的某些行,但这似乎不起作用 我在谷歌上搜索了很多,但问题似乎仍然存在 下面是我检查的一些方法,但它不起作用 HSSFFont font = (HSSFFont) sheet.getWorkbook().createFont(); font.setBold(true); style.setFont(font); style.setFillPattern(CellStyle.SOLID_FOREGROUND); style.setFillForegr

我正在使用POI突出显示excel工作表中的某些行,但这似乎不起作用

我在谷歌上搜索了很多,但问题似乎仍然存在

下面是我检查的一些方法,但它不起作用

HSSFFont font = (HSSFFont) sheet.getWorkbook().createFont();
 font.setBold(true);
 style.setFont(font);
 style.setFillPattern(CellStyle.SOLID_FOREGROUND);
 style.setFillForegroundColor(new   HSSFColor.BLUE().getIndex());
 cell.setCellStyle(style);
//nextRow.setRowStyle(style);


第一个解决方案非常有效

InputStream inp;
HSSFWorkbook wb = null;
HSSFSheet sheet = null;
HSSFRow hssf_DataRow;
HSSFCell cell = null;

inp = new FileInputStream(FileName);
wb = new HSSFWorkbook(inp);
sheet = wb.getSheetAt(1);

hssf_DataRow = sheet.createRow((short) 1);

cell = hssf_DataRow.createCell(1);

HSSFFont font = (HSSFFont) sheet.getWorkbook().createFont();
HSSFCellStyle style = (HSSFCellStyle) cell.getCellStyle();

font.setBold(true);
style.setFont(font);
style.setFillPattern(CellStyle.SOLID_FOREGROUND);
style.setFillForegroundColor(new   HSSFColor.BLUE().getIndex());
cell.setCellStyle(style);

您确定正在连接文件吗?没有例外?是否只使用一个样式对象?或者你有很多。style1,style2,…非常感谢您的指点。事实上,我并没有回写excel。
HSSFPalette palette = ((HSSFWorkbook) sheet.getWorkbook()).getCustomPalette();
HSSFCellStyle style= (HSSFCellStyle) cell.getCellStyle();
HSSFColor myColor = palette.findSimilarColor(255, 0, 0);
short palIndex = myColor.getIndex();
style.setFillForegroundColor(palIndex);
cell.setCellStyle(style);
InputStream inp;
HSSFWorkbook wb = null;
HSSFSheet sheet = null;
HSSFRow hssf_DataRow;
HSSFCell cell = null;

inp = new FileInputStream(FileName);
wb = new HSSFWorkbook(inp);
sheet = wb.getSheetAt(1);

hssf_DataRow = sheet.createRow((short) 1);

cell = hssf_DataRow.createCell(1);

HSSFFont font = (HSSFFont) sheet.getWorkbook().createFont();
HSSFCellStyle style = (HSSFCellStyle) cell.getCellStyle();

font.setBold(true);
style.setFont(font);
style.setFillPattern(CellStyle.SOLID_FOREGROUND);
style.setFillForegroundColor(new   HSSFColor.BLUE().getIndex());
cell.setCellStyle(style);