[英]java - Cannot get a NUMERIC value from a STRING cell Exception
我目前正在掌握使用 Apache POI 的竅門,我目前正在嘗試導入 .xlsx 並將其存儲到 ArrayList 中,但問題是我似乎收到了一個異常錯誤,提示“無法從一個 STRING 單元格”。 這是專門的消息。
我很確定單元格的值有一個 NUMERIC 值。
private void AddButtonActionPerformed(java.awt.event.ActionEvent evt) {
FileNameExtensionFilter filter = new FileNameExtensionFilter("Excel file","xlsx", "xls");
final JFileChooser fc = new JFileChooser();
fc.setFileFilter(filter);
fc.setDialogTitle("Excel file selector");
int returnVal = fc.showOpenDialog(mainMenuPanel);
if (returnVal == JFileChooser.APPROVE_OPTION){
jDialogaddItem.setVisible(true);
try{
ArrayList<Item> itemList2 = new ArrayList<>();
Item item2;
String filepath = fc.getSelectedFile().getAbsolutePath();
XSSFWorkbook wb = new XSSFWorkbook(new FileInputStream(filepath));
XSSFSheet sheet = wb.getSheetAt(0);
Iterator<Row> rowIterator = sheet.iterator();
while(rowIterator.hasNext()){
Row row = rowIterator.next();
Iterator<Cell> cellIterator = row.cellIterator();
while(cellIterator.hasNext()){
Cell cell = cellIterator.next();
item2 = new Item(cell.getStringCellValue(),cell.getStringCellValue(),cell.getStringCellValue(),cell.getStringCellValue(), (int)cell.getNumericCellValue());
itemList2.add(item2);
}
}
}
catch(Exception e){
JOptionPane.showMessageDialog(null, e);
}
}
}
我的excel文件是這樣的
將其作為字符串獲取並進行轉換:
Integer.valueOf(cell.getStringCellValue())
否則在 excel 中,您應該使用數字格式的單元格
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.