jxl은 2003년 엑셀 파일까지만 지원해주기 때문에

아래 코드처럼 jxl 라이브러리 활용하여 Workbook 생성시 

import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException;

public String inputFIle(MultipartFile xlsxFile) throws BiffException, IOException {

        Workbook wb = Workbook.getWorkbook(xlsxFile.getInputStream());  <--에러 발생지점
        Sheet sheet =  wb.getSheet(0);

 

'Unable to recognize OLE stream' 에러 발생한다면

엑셀 파일 Excel 97 - 2003 서식 파일 (*.xlt) 이 아니여서 그렇다. 

확장자 .xlsx 는 jxl 라이브러리로 엑셀 접근이 어렵다.

대체 방안1.  POI 라이브러리 활용

대체방안 2. 엑셀 다른이름으로 저장 > 파일 형식 : Excel 97 - 2003 서식 파일 (*.xlt) 선택  저장 후 재진행

 

 

+ Recent posts