在Java中读取包含字母数字数据的excel单元格
我试图从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);
下面是我的代码示例:
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
已替换为enumCellType.NUMERIC
,只需使用Cell.getCellType()
和该枚举即可。