반응형
@Override
public List<DataVO> uploadExcelFile(MultipartFile excelFile, Boolean dbInsertFlag, AdminSearchVO paramVO) {
List<DataVO> list = new ArrayList<DataVO>();
Set<String> groupCodes = new HashSet<>();
try {
OPCPackage opcPackage = OPCPackage.open(excelFile.getInputStream());
XSSFWorkbook workbook = new XSSFWorkbook(opcPackage);
XSSFSheet sheet = workbook.getSheetAt(0);
for(int i=1; i<sheet.getLastRowNum()+1; i++) {
DataVO data = new DataVO();
XSSFRow row = sheet.getRow(i);
if(null == row) {
break;
}
// 해당 위치 셀값에서 확인
XSSFCell cell = row.getCell(0);
if(cell == null) {
break;
}
switch(cell.getCellType()) {
case STRING:
// STRING일때는 그냥 진행
continue;
case NUMERIC:
// 타입 변경
cell.setCellType(STRING);
}
cell = row.getCell(1);
if(cell == null) {
break;
}
switch(cell.getCellType()) {
case STRING:
continue;
case NUMERIC:
cell.setCellType(STRING);
}
if(null != cell) {
data.setGroupTitle(cell.getStringCellValue());
}
...
}
+ ) cell.getCellType() 비교 값들
NUMERIC, STRING, FORMULA, BOOLEAN으로 바로 써도 되지만 만약 사용이 안된다면 CellType.NUMERIC, CellType.STRING, CellType.FORMULA, CellType.BOOLEAN 사용
반응형
'Backend > Utils' 카테고리의 다른 글
[ngrok] HTTP로 만들어진 서버를 HTTPS 프로토콜로 터널링 (0) | 2024.05.08 |
---|---|
[gitHub] You are in 'detached HEAD' state. (0) | 2024.03.13 |
[POI] 엑셀 업로드시 중복값 체크 (0) | 2024.03.13 |
[gitHub]Large files detected. You may want to try Git Large File Storage (0) | 2024.03.12 |
[Tiles] 프로젝트에 Tiles 적용 (0) | 2024.03.04 |