티스토리 뷰
Java 엑셀 파일 불러오기
이번 시간에는 Java 에서 엑셀 파일을 불러와 데이터를 가져오는 방법에 대해서 알아보겠습니다. 우선 엑셀파일을 준비하시구요
저는 이 파일을 사용하겠습니다.
우선 엑셀 파일을 불러 오기 위해서는 poi라는 라이브러리를 import 해줘야 합니다. poi란 "Microsoft Documents를 사용할 수 있게 해주는 자바 라이브러리 " 입니다.
우선 poi 라이브러리를 다운 받겠습니다. http://poi.apache.org/download.html 이 곳으로 갑니다.
그리고 빨간색 부분을 다운로드 합니다. 그런 뒤에 압출을 푸시면 아마 poi 3.15 폴더가 만들어질 것입니다.
이제 poi3.15 폴더를 프로젝트 폴더에 넣어주고 build path 에 jar 파일들을 import 해줍니다.
아래의 빨간 부분의 jar 파일들을 모두 import 해줍니다.
소스코드
기본적으로 셀의 데이터를 모두 읽어오는 소스코드는 다음과 같습니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 | public class Population { import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.xssf.usermodel.XSSFCell; import org.apache.poi.xssf.usermodel.XSSFRow; import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook; public class Population { public static void main(String[] args) throws IOException { //파일을 읽기위해 엑셀파일을 가져온다 FileInputStream fis=new FileInputStream("C:\\a.xlsx"); XSSFWorkbook workbook=new XSSFWorkbook(fis); int rowindex=0; int columnindex=0; //시트 수 (첫번째에만 존재하므로 0을 준다) //만약 각 시트를 읽기위해서는 FOR문을 한번더 돌려준다 XSSFSheet sheet=workbook.getSheetAt(0); //행의 수 int rows=sheet.getPhysicalNumberOfRows(); for(rowindex=1;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("각 셀 내용 :"+value); } } } } } } | cs |
반응형
'프로그래밍 > JAVA' 카테고리의 다른 글
JAVA Thread 사용법 (0) | 2016.11.16 |
---|---|
JAVA Thread에 대해 (0) | 2016.11.15 |
(JAVA0 SerialVersionUID 정의 및 사용법 (0) | 2016.10.27 |
JAVA Java.nio 클래스란 (0) | 2016.10.27 |
JAVA 역직렬화 : 객체 복구 (0) | 2016.10.26 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- 일본 배낭여행
- windows
- Java UI
- 인텔리제이
- TableView
- java
- JavaFX 종료
- effectivejava
- 스프링부트
- 배낭 여행
- 방통대 과제물
- springboot
- JavaFX 테이블뷰
- 자전거
- 배낭여행
- 자바
- JavaFX Window Close
- JavaFX
- 일본 자전거 여행
- 이펙티브 자바
- 일본여행
- 일본 여행
- JavaFX Table View
- 이펙티브자바
- effective java
- 자전거 여행
- git
- 이펙티브
- 텐트
- intelij
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
글 보관함