728x90
반응형
기본 지식 : 시트(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);
cf) 배경색 목록 : http://res.ebook.ruanko.com/ebookapi/uploads/apidocs/apache-POI/org/apache/poi/hssf/util/HSSFColor.html
○ (셀)필드값 채우기 : 셀 객체 생성 후, 값 세터(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();
}
728x90
'스마트웹앱콘텐츠전문가 > JAVA' 카테고리의 다른 글
싱글톤 패턴 (0) | 2019.08.12 |
---|---|
[문자열 부분 일치 및 일치 여부] (0) | 2019.07.04 |
공백 제거 (0) | 2019.02.21 |
URL 유효성 검사 (0) | 2019.02.21 |
[자바7]동시성 (0) | 2018.06.05 |