스마트웹앱콘텐츠전문가/JAVA

[엑셀 POI 라이브러리]

9D4U 2019. 7. 4. 19:02
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