Apache POI无法替换空白Excel单元格

问题描述 投票:0回答:1

我目前正在从Excel电子表格中读取值,并将该值分配给String变量。下面是我正在使用的代码示例:

        Workbook workbook = new XSSFWorkbook(iStream);
        Sheet firstSheet = workbook.getSheetAt(0);
        Iterator<Row> iterator = firstSheet.iterator();
        // Skips the header row
        iterator.next();

        // Iterate through the first sheet and get the cell values
        while (iterator.hasNext()) {

            Row nextRow = iterator.next();
            Iterator<Cell> cellIterator = nextRow.cellIterator();

            while (cellIterator.hasNext()) {

                Cell cell = cellIterator.next();
                int columnIndex = cell.getColumnIndex();

                switch (columnIndex) {
                case 0:
                    String userName;
                    if (cell.getStringCellValue() == "") {
                        userName = "BlankCell";
                    } else {
                        userName = cell.getStringCellValue();
                    }                       
                    break;
                }

我在这个excel电子表格中有多个空白单元格,我试图用短语“ BlankCell”替换。我过去已经成功使用了这段代码,但是由于某种原因,它不再起作用。在这种情况下,我的逻辑是否适合替换空白单元格?

java excel switch-statement apache-poi
1个回答
2
投票

==进行字符串比较不是一个好习惯,为此有equals个方法。

String userName;
if ("".equals(cell.getStringCellValue())) {
    userName = "BlankCell";
} else {
    userName = cell.getStringCellValue();
}

© www.soinside.com 2019 - 2024. All rights reserved.