我有一个条件,我需要检查字符串中的分隔符。如果找到,那么我需要将excel单元格设置为空白。我有这段代码:
row = sheet.createRow(newRow);
for(String fieldValues: fieldList)
{
if(fieldValues.contains(","))
{
XSSFCell cell = row.createCell(cellNo);
cell.setCellValue(Cell.CELL_TYPE_BLANK);
cellNo++;
}
else
{
XSSFCell cell = row.createCell(cellNo);
cell.setCellValue(fieldValues);
cellNo++;
}
}
Cell.CELL_TYPE_BLANK即使我尝试使用cell.setCellValue(“”)也没有设置空白单元格,但是它再次没有设置。如果我们想要设置空白单元格,它是否会尝试跳过该单元格?如果没有,那么任何人都可以告诉我如何做到这一点。
感谢您的帮助!!
答案 0 :(得分:10)
根据我希望的文档和POI实现
cell.setCellType(Cell.CELL_TYPE_BLANK);
应该做的就是你所需要的。
答案 1 :(得分:0)
您正在使用setCellValue
。而是使用此方法:setCellStyle
row = sheet.createRow(newRow);
for(String fieldValues: fieldList)
{
if(fieldValues.contains(","))
{
XSSFCell cell = row.createCell(cellNo);
cell.setCellStyle(Cell.CELL_TYPE_BLANK);
cellNo++;
}
else
{
XSSFCell cell = row.createCell(cellNo);
cell.setCellValue(fieldValues);
cellNo++;
}
}
答案 2 :(得分:0)
我来晚了,但是
不要考虑将单元格设置为空。 考虑将单元格留空。 创建单元格时,默认情况下该单元格为空,直到您设置其值为止。
尝试这样的事情:
row = sheet.createRow(newRow);
for(String fieldValues: fieldList)
{
if(fieldValues.contains(","))
{
XSSFCell cell = row.createCell(cellNo); //it's already blank here
cellNo++;
}
else
{
XSSFCell cell = row.createCell(cellNo);
cell.setCellValue(fieldValues);
cellNo++;
}
}