2017-04-07 98 views
-2

你好,我试图将excel表单数据保存到MySQL数据库中。 为此,我使用Apache Poi。我在Apache Poi中使用DataFormatter获取单元格值。我获得单元格值作为字符串格式成功,但我试图将字符串值更改为长我得到NumberFormatException。我正在尝试下面的代码。请尝试解决我的问题。java.lang.NumberFormatException:对于输入字符串:“”

谢谢。

FileInputStream inputStream = new FileInputStream(filename); 
    XSSFWorkbook workbook = new XSSFWorkbook(inputStream); 
    XSSFSheet firstSheet = workbook.getSheetAt(0); 
    DataFormatter formatter = new DataFormatter(); 
    for(int z=0;z<firstSheet.getLastRowNum();z++) 
    { 
    Cell upccell=firstSheet.getRow(z).getCell(0); 
    String upcstring =formatter.formatCellValue(upccell); 
    long upc=Long.valueOf(upcstring); 
    . 
    . 
    . 
    } 

这是控制台中的错误堆栈跟踪。

java.lang.NumberFormatException: For input string: "upc" 
at java.lang.NumberFormatException.forInputString(Unknown Source) 
at java.lang.Long.parseLong(Unknown Source) 
at java.lang.Long.<init>(Unknown Source) 
+5

'upc'不是一个数字转换 – Satya

+0

哪个号码你希望得到什么? –

+2

我们无法看到您的数据。你如何期望我们提供帮助? –

回答

1

我认为这个代码返回的所有单元格值不是数值。

细胞upccell = firstSheet.getRow(Z).getCell(0);

,所以你必须确保,无论你正在阅读应该单元格包含数值。

相关问题