숫자 셀에서 텍스트 값을 가져올 수 없습니다.

        poi를 통해 엑셀 파일을 읽는 과정에서 cell.getStringCellValue() 메서드를 통해 숫자 셀에서 문자열을 읽으려고 하면 오류가 보고된다.

오류:


    스레드 "main" java.lang.IllegalStateException의 예외: org.apache.poi.xssf.usermodel.XSSFCell.typeMismatch(XSSFCell.java:845)의 숫자 셀에서
    org.apache.poi.xssf 의 텍스트 값을 가져올 수 없습니다. .usermodel.XSSFCell.getRichStringCellValue(XSSFCell.java:294)
    at org.apache.poi.xssf.usermodel.XSSFCell.getStringCellValue(XSSFCell.java:246)
    at com.li.demo.utils.Service.upload(Service.java :39)
    com.li.demo.utils.Service.main(Service.java:20)에서

해결책:

 셀에 유형 문제가 있습니다. 다음과 같이 데이터를 가져오기 전에 셀 유형을 설정할 수 있습니다.

 

 if(row.getCell(0) != null) {
     Cell cell = row.getCell(0);
     cell.setCellType(Cell.CELL_TYPE_STRING);
}

Guess you like

Origin blog.csdn.net/weixin_46205984/article/details/122256191