728x90
반응형
pom.xml
<!-- xssfworkbook 사용 -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.13</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.13</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.4</version>
</dependency>
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.2</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml-schemas</artifactId>
<version>3.13</version>
</dependency>
<dependency>
<groupId>org.apache.xmlbeans</groupId>
<artifactId>xmlbeans</artifactId>
<version>2.6.0</version>
</dependency>
java Code
try {
FileInputStream file = new FileInputStream("C://coding//eclipse-workspace//soo_Naver//test.xlsx");
//C:\coding\eclipse-workspace\soo_Naver
XSSFWorkbook workbook = new XSSFWorkbook(file);
int rowindex=0; int columnindex=0;
//시트 수 (첫번째에만 존재하므로 0을 준다)
//만약 각 시트를 읽기위해서는 FOR문을 한번더 돌려준다
XSSFSheet sheet = workbook.getSheetAt(0);
//행의 수
int rows=sheet.getPhysicalNumberOfRows();
for(rowindex=0; rowindex<rows;rowindex++){
//행을읽는다
XSSFRow row=sheet.getRow(rowindex);
if(row !=null){
//셀의 수
int cells=row.getPhysicalNumberOfCells();
for(columnindex=0; columnindex<=cells; columnindex++){
//셀값을 읽는다
XSSFCell cell=row.getCell(columnindex);
String value="";
//셀이 빈값일경우를 위한 널체크
if(cell==null){
continue;
}else{
//타입별로 내용 읽기
switch (cell.getCellType()){
case XSSFCell.CELL_TYPE_FORMULA:
value=cell.getCellFormula();
break;
case XSSFCell.CELL_TYPE_NUMERIC:
value=cell.getNumericCellValue()+"";
break;
case XSSFCell.CELL_TYPE_STRING:
value=cell.getStringCellValue()+"";
break;
case XSSFCell.CELL_TYPE_BLANK:
value=cell.getBooleanCellValue()+"";
break;
case XSSFCell.CELL_TYPE_ERROR:
value=cell.getErrorCellValue()+"";
break; }
}
System.out.println(rowindex+"번 행 : "+columnindex+"번 열 값은: "+value);
}
}
}
}catch(Exception e) { e.printStackTrace();
}
728x90
반응형
'개발중 > Java' 카테고리의 다른 글
EC2 web 배포 (0) | 2021.03.15 |
---|---|
JSON / Jackson대용량 파일 읽기 (0) | 2021.03.15 |
람다식 parallelStream, forEach (0) | 2021.02.25 |
람다식 filter (0) | 2021.02.25 |
JAVA Excel Create 내보내기 (기초) (0) | 2021.02.25 |