JXL-api
jxl.write.WritableWorkbook : workbook,sheet등을 생성 및 관리하기 위한 엑셀파일관리 추상 클래스
jxl.Workbook : 기본 엑셀파일 추상 클래스
jxl.write.WritableSheet : sheet를 관리하는 인터페이스
jxl.write.WritableCellFormat : 엑셀 내 cell관련 포맷정보
jxl.write.Label : 엑셀내 필드명(엑셀의 cell에 들어있는 데이타 값이라 생각하면 된다)
jxl.write.Blank : 빈 cell관리 클래스
<엑셀 처리>
1. 엑셀파일을 생성한다
WritableWorkbook testExcel = Workbook.createWorkbook(new File("sample.xls"));
기존의 엑셀파일을 읽어와 처리하고자 하는 경우에는 다음과 같다.
WritableWorkbook testExcel = Workbook.getWorkbook(new File("sample.xls"));
2. 생성된 엑셀관리 객체의 sheet를 선택한다
WritableSheet sheet1 = testExcel.createSheet("1stShell", 0);
위의 경우 새로이 생성된 엑셀파일내 새로운 sheet를 추가하는 것이라면
기존의 생성된 특정 sheet를 선택하고자 하는 경우 다음과 같다
WritableSheet sheet0 = testExcel.getSheet("preShell") ;
3. 셀서식을 설정한다
WritableCellFormat titleFormat= new WritableCellFormat();
- 폰트 설정
WritableCellFormat은 쉘정열 및 테두리설정 및 배경색 등 셀서식과 관련된 설정을 할 수 있다.
폰트 설정의 경우 다음과 같이 처리한다.
WritableCellFormat titleFormat
= new WritableCellFormat(
new WritableFont (WritableFont.ARIAL, //폰트 타입.Arial 외 별다른건 없는듯 하다. 20, //폰트 크기
WritableFont.BOLD, //Bold 스타일
false, //이탤릭체여부
UnderlineStyle.NO_UNDERLINE, //밑줄 스타일
Colour.WHITE, //폰트 색
ScriptStyle.NORMAL_SCRIPT)); //스크립트 스타일
폰트 설정의 경우 위와 같이 Font설정 객체를 생성한후 서식객체 생성시 인자로 넣으면 된다.
다양한 생성자를 제공하고 있으니 굳이 위화면과 같이 할 필요는 없다. (API 참조)
-셀 서식 설정
기타 셀서식과 관련 주로 사용하는 기능을 설명하면 다음과 같다.
titleFormat.setAlignment(Alignment.CENTRE);
// 셀 가로정열(좌/우/가운데설정가능)
titleFormat.setVerticalAlignment(VerticalAlignment.CENTRE);
// 셀 세로정렬(상단/중단/하단설정가능)
titleFormat.setBorder(Border.ALL, BorderLineStyle.THICK);
// 보더와 보더라인스타일 설정
titleFormat.setBackground(Colour.ICE_BLUE);
// 배경색 설정
4. 데이타를 셀에 등록한다
Label title = new Label(0, 0, "테스트 타이틀", titleFormat);
//라벨(열,행,"문장",포멧) : 숫자형은 Number를 사용
sheet1.addCell(title);
// sheet1의 1열1행에 "테스트 타이틀"이라는 데이타를 넣는다--> 데이타 등록을 위한 Label 생성시 첫번째 인자는 sheet의 열, 두번째 인자는 행을 의미한다는 것에 주의...
5. Sheet 디자인 설정(*^^*)
이부분은 해도 그만 안해도 그만이지만 깔끔한 엑셀저장을 위한 선택코스?
-셀 크기 변경
관련메소드는 setColumnView(몇번째 컬럼, 넓이)
sheet1.setColumnView(0, 20); //sheet1의 첫번째 열의 크기를 20으로 설정한다
또는
CellView cv = sheet1.getColumnView(0);
cv.setSize(30);
sheet1.setColumnView(0,cv); //기존의 열정보 변경. 30으로 변경한다
- 셀병합
sheet1.mergeCells(0, 0, 5, 0 ); //sheet1의 1열1행의 cell을 6열1행의 셀까지 병합한다.
- 빈 셀 처리
Blank blank = new Blank(6, 0, titleFormat); // 빈 셀(열,행,포멧)
sheet1.addCell(blank); // 위의 병합셀옆에 같은서식의 빈셀추가
6. 데이타를 파일에 저장한다.
testExcel.write(); // 쓰고
testExcel.close(); // 닫자
-0-상당히뒤져서나온귀한정보..ㅋㅋ이거보고..겨우알바를바쳤따..후..힘들었어~
API도첨부해요~=-=다운바드실라면바드시고~-0-ㅋㅋ(영어라서..해석이힘들었어;;ㅎㅎ)
'app > java' 카테고리의 다른 글
알고리즘트레이닝북~~ (0) | 2008.04.08 |
---|---|
이클립스 풍선말 한글로 나오게하기~ (0) | 2008.04.05 |
JXL 설치하기 (4) | 2008.03.12 |
jar 파일 exe 파일 만들기!!(jre파일 설치하게하기) (0) | 2008.03.12 |
AWT 를 첨하시는 분께 (요약본) (0) | 2008.03.09 |