[엑셀 POI 라이브러리]

기본 지식 : 시트(sheet) - 행(row), 열(column?) - 셀(cell) <- 최종적으로 셀에 스타일(setCellStyle)과 데이터값 입력(setCellValue)

Workbook ⊃ Sheet  Row  Cell(style, value)

○ 글자 정렬 : 정렬은 스타일에 포함이 되므로, 셀 스타일 생성 후 정렬 세터(setAlignment)에서 지정
CellStyle mystyle = myworkbook.createCellStyle();
mystyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);
cf) 정렬 종류 : ALIGN_GENERAL, ALIGN_LEFT, ALIGN_CENTER, ALIGN_RIGHT  

○ 폰트(크기) : 폰트도 스타일에 포함이 되므로, 폰트 세터(setFont)에서 지정
Cell mycell = mysheet.getCell(0); // 셀 생성
Font myfont = myworkbook.createFont(); //폰트 객체 생성
myfont.setColor(Font.COLOR_RED); //폰트 색 설정
myfont.setFontHeightInPoints((short)17); //폰트 크기 설정
myfont.setBoldWeight(Font.BOLDWEIGHT_BOLD); //폰트 BOLD 처리 설정
mystyle.setFont(myfont); //스타일 폰트 세터 설정
mycell.setCellStyle(mystyle);
○ 배경색 :  스타일에 포함 되므로, 배경색 세터(setFillForegroundColor + setFillPattern) 에서 지정
mystyle.setFillForegroundColor(HSSFColor.GREEN.index);
mystyle.setFillPattern(HSSFColor.SOLID_FOREGROUND);
mycell.setCellStyle(mystyle);

○ (셀)필드값 채우기 : 셀 객체 생성 후, 값 세터(setCellValue)에서 지정
mycell.setCellValue("미나토자키사나");

○ 셀 병합 : 셀에 스타일, 값 설정 후 셀 병합(addMergedRegion) 또는 셀 병합 후 셀에 스타일+값 설정
myshee.addMergedRegion(new CellRangeAddress('병합 할 시작 행넘버', '병합 할 마지막 행넘버', '병합 할 시작 셀 넘버', '병합 할 마지막 셀 넘버'));

cf) 엑셀 파일 생성 : 파일 객체 사용
try{
 String fileName = "엑셀" //확장자 추가 xlsx
 File f = new File('생성될 파일의 위치(경로)');
    f.mkdirs();
    
    FileOutputStream fos = new FileOutputStream(f+FILE.separator+fileName);
    myworkbook.write(fos);
}catch(Exception e){
 e.printStackTrace();
}finally{
 fos.close();
}


댓글