본문 바로가기

IT개발일지/Android

[Android] 안드로이드 Excel 파일 만들기

이번 포스팅은 안드로이드로 Excel 파일을 만드는 기능에 대하여 작성한다.


POI 라이브러리

 

* 안드로이드 에서 자체적으로 엑셀파일을 열 수는 있지만 엑셀문서 형식에 맞게끔 데이터를 만들수는 없다. 그렇기에 우리는 Apache 에서 제공하는 POI 라이브러리를 이용하여 엑셀 데이터를 생성한다.

http://poi.apache.org/download.html#POI-4.1.0

POI 라이브러리 다운로드링크 이다.

 

1. 위와 같이 라이브러리를 추가해준다

 

private void saveExcel(){
Workbook workbook = new HSSFWorkbook();

Sheet sheet = workbook.createSheet(); // 새로운 시트 생성

Row row = sheet.createRow(0); // 새로운 행 생성
Cell cell;

cell = row.createCell(0); // 1번 셀 생성
cell.setCellValue("견적번호"); // 1번 셀 값 입력

cell = row.createCell(1); // 2번 셀 생성
cell.setCellValue("회원아이디"); // 2번 셀 값 입력

cell = row.createCell(2); // 2번 셀 생성
cell.setCellValue("썬팅영역"); // 2번 셀 값 입력

cell = row.createCell(3); // 2번 셀 생성
cell.setCellValue("썬팅브랜드"); // 2번 셀 값 입력

cell = row.createCell(4); // 2번 셀 생성
cell.setCellValue("등급"); // 2번 셀 값 입력

cell = row.createCell(5); // 2번 셀 생성
cell.setCellValue("수익금"); // 2번 셀 값 입력

cell = row.createCell(6); // 2번 셀 생성
cell.setCellValue("결제 날짜"); // 2번 셀 값 입력



for(int i = 0; i < paymentDataList.size() ; i++){ // 데이터 엑셀에 입력
row = sheet.createRow(i+1);
cell = row.createCell(0);
cell.setCellValue(paymentDataList.get(i).getEstimateNumber());
cell = row.createCell(1);
cell.setCellValue(paymentDataList.get(i).getUserId());
cell = row.createCell(2);
cell.setCellValue(paymentDataList.get(i).getShape());
cell = row.createCell(3);
cell.setCellValue(paymentDataList.get(i).getBrandName());
cell = row.createCell(4);
cell.setCellValue(paymentDataList.get(i).getLevel());
cell = row.createCell(5);
cell.setCellValue(paymentDataList.get(i).getMoney());
cell = row.createCell(6);
cell.setCellValue(paymentDataList.get(i).getPayDate());
}


File xlsFile = new File(getExternalFilesDir(null),"수익현황.xls");
try{

FileOutputStream os = new FileOutputStream(xlsFile);
workbook.write(os); // 외부 저장소에 엑셀 파일 생성
}catch (IOException e){

e.printStackTrace();
}

위와 같이 함수를 사용하면 안드로이드스튜디오 에서 엑셀 파일을 구성할수가있다.