반응형
개발중 정리된 정보를 excel 파일로 변환하여 데이터를 추출가공하는 부분이 있어서 정리합니다.
일반적으로 사용할 엑셀파일을 서식과 포맷을 정의한 temp 엑셀파일을 생성해서 저장후 이를 꺼내서 데이터만 cell 에 입력하고, 이파일을 저장하는 방법으로 많이 사용하게 됩니다. (직접적으로 cell 단위 서식까지 신경써가면서 작업하기에는 코딩이 너무 많아 집니다.)
하여~
서식이 정의된 temp 엑셀파일(temp.xls로 하겠습니다.)을 복사하여 사용하는 방법을 적어보겠습니다.
간단한 테스트 코드이므로 응용하는 방식은 개발자에 따라 달라질 수 있습니다. (여기서는 제가 진행한 안드로이드 코드를 기반으로 합니다.)
위에 보이는 같이 적당한 곳에 서식이 정의된 temp_log.xls 파일을 저는 assets 폴더에 저장해 놓았습니다. (안드로이드의 경우 assets에 대한 접근이 생각보다 손쉽기때문입니다.)
자 코드는 다음과 같습니다.
try { // 외장메모리에 엑셀파일을 저장하기 위한 디렉토리 String strDir = Environment.getExternalStorageDirectory().getAbsolutePath() + "/TEST/"; // 새로 생성하는 엑셀파일명 String strFileName = "copyedTempLog.xls"; // assets/excel/temp_log.xls 파일을 로딩합니다. Workbook tempWorkbook = Workbook.getWorkbook(mContext.getAssets().open("excel/temp_log.xls")); // WritableWorkbook 을 temp_log.xls 파일을 기반으로 동일하게 생성합니다. WritableWorkbook writableWorkbook = Workbook.createWorkbook(new File(strDir, strFileName), tempWorkbook); /** 이후 엑셀파일에 데이터를 입력하는 작업 진행 */ // 신규생성한 엑셀파일을 실제로 지정된 파일에 쓰기 후 닫기 writableWorkbook.write(); writableWorkbook.close(); tempWorkbook.close(); } catch (Exception e) { e.printStackTrace(); }
간단히 이미 작성된 xls 파일을 기반으로 새로운 xls 파일을 작성하는 방법을 알아보았습니다. 끝.
반응형