在Java中读取包含字母数字数据的excel单元格

在Java中读取包含字母数字数据的excel单元格,java,excel,iterator,apache-poi,Java,Excel,Iterator,Apache Poi,我试图从excel电子表格中包含字母和数字的单元格中获取值下面是我的代码示例: String excelFilePath = "FILEPATH"; FileInputStream inputStream = new FileInputStream(new File(excelFilePath)); Workbook workbook = new XSSFWorkbook(inputStream); Sheet firstSheet = workbook.getSheetAt(0);

我试图从excel电子表格中包含字母和数字的单元格中获取值
下面是我的代码示例:

 String excelFilePath = "FILEPATH";
 FileInputStream inputStream = new FileInputStream(new File(excelFilePath));
 Workbook workbook = new XSSFWorkbook(inputStream);
 Sheet firstSheet = workbook.getSheetAt(0);
 Iterator<Row> iterator = firstSheet.iterator();

 iterator.next();

    while (rowIterator.hasNext()) {
            Row nextRow = rowIterator.next();
            Iterator<Cell> cellIterator = nextRow.cellIterator();

            while (cellIterator.hasNext()) {
                Cell nextCell = cellIterator.next();

                int columnIndex = nextCell.getColumnIndex();

                switch (columnIndex) {
                case 0:
                    String name = nextCell.getStringCellValue();
                    break;
                case 1:
                    Date enrollDate = nextCell.getDateCellValue();  
                case 2:
                    String userid = nextCell.getStringCellValue();                   
                }

            }
String excelFilePath=“FILEPATH”;
FileInputStream inputStream=新FileInputStream(新文件(excelFilePath));
工作簿=新XSSF工作簿(inputStream);
Sheet firstSheet=工作簿。getSheetAt(0);
迭代器迭代器=firstSheet.Iterator();
iterator.next();
while(roweiterator.hasNext()){
Row nextRow=rowditerator.next();
迭代器cellIterator=nextRow.cellIterator();
while(cellIterator.hasNext()){
Cell-nextCell=cellIterator.next();
int columnIndex=nextCell.getColumnIndex();
开关(列索引){
案例0:
String name=nextCell.getStringCellValue();
打破
案例1:
日期enrollDate=nextCell.getDateCellValue();
案例2:
字符串userid=nextCell.getStringCellValue();
}
}

我的问题与案例2有关。用户ID可以是字母、数字或两者的组合,例如:(AX77552、112321、ASWTT)
如果我说getStringCellValue(),我会得到一个错误,如果我说getNumericCellValue(),我也会得到一个错误.
有什么方法可以让您获得这行数据中单元格的数值和字符串值吗?

检查单元格类型…@NaveenBharadwaj cell.cell\u type\u numeric等在apache poi 4.0中都被删除了。0@deHaar它是数字和文本的混合体,不是一种一致的类型。@nb96大约用了1分钟才找到that
Cell.Cell\u TYPE\u NUMERIC
已替换为enum
CellType.NUMERIC
,只需使用
Cell.getCellType()
和该枚举即可。