最近项目有个读取EXCEL文件内容的需求.于是找了资料写了如下代码
POIFSFileSystem fs = null; 
  HSSFWorkbook wb = null; 
  try { 
  fs = new POIFSFileSystem(new FileInputStream("d:\test.xls")); 
  wb = new HSSFWorkbook(fs);
  } catch (IOException e) { 
  e.printStackTrace(); 
  } 
  HSSFSheet sheet = wb.getSheetAt(0); 
  HSSFRow row = sheet.getRow(0); 
  HSSFCell cell = row.getCell((short) 0);
  String msg = cell.getStringCellValue();     //报错行结果在页面中报错
java.lang.NumberFormatException: You cannot get a string value from a numeric cell
org.apache.poi.hssf.usermodel.HSSFCell.getStringCellValue(HSSFCell.java:775)
com.etech.tutiya.business.UploadFile2.doInit(UploadFile2.java:77)
com.etech.tutiya.action.UploadFile2Action.init(UploadFile2Action.java:44)发生错误的就是上面的报错行.请问大家这是什么问题,谢谢

解决方案 »

  1.   

    最后的那个方法的返回类型是什么?还是去下个jexcelapi吧
      

  2.   

    先看看 你要取的cell是什么类型,
    在用getXXX方法去区
      

  3.   

    String msg = cell.getStringCellValue();     //报错行int msg = cell.getIntegerCellValue();
      

  4.   

    HSSFCell cell = row.getCell((short) 0);-->换成HSSFCell cell = row.getCell((short) 1);
    试试看
      

  5.   

    You cannot get a string value from a numeric cell----------
    说得很明白了,数据类型不匹配。
      

  6.   

    改HSSFCell cell = row.getCell((short) 0); 也行,不要用SHORT,这是数字型,用字串型就好
      

  7.   

    getCell报错,可能是由于该cell为空引起的。
      

  8.   

    你要读取得excel文件的那个格的格式不对,把那个格的格式设置成一般的就行了,我以前遇见过