728x90
반응형

자바에서 Excel을 다루기 위한 API가 몇가지 존재하는게 그중 하나가 POI다.

 

POI는 자카르타 프로젝트 중의 하나로 Microsoft Format File을 액세스 할 수 있는 API를 제공하고 있다.

POI안에는 몇가지 컴퍼넌트들이 있다

  • POIFS
    Microsoft의 OLE2 포맷 형식의 문서를 자바로 읽고 쓸수 있다 기본적으로 POI의 모든 컴퍼넌트들이 POIFS를 사용한다.
  • HSSF
    엑셀파일을 읽고 쓸수 있도록 지원한다.
  • HWPF
    워드파일을 읽고 쓸수 있도록 지원한다.
  • HPSF
    Microsoft의 OLE2 포맷 형식의 문서 속성을 어플리케이션에서 사용 할수 있도록 지원한다.

우선 아파치 자카르타 프로젝트중에서 POI를 찾아 다운받자.

(http://www.apache.org/dyn/closer.cgi/poi/release/bin/poi-bin-3.6-20091214.zip)

 

다음은 HSSF를 사용하여 엑셀파일을 만드는 간단한 예제이다.

 

package ahope.test.poi;

 

import java.io.FileOutputStream;
import java.io.IOException;

 

import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;

 

public class poi {
 
 
 public static void main(String[] args) {
  
  // c드라이브 밑에 write라는 엑셀 파일을 만들어주겠다

  String filepath = "C:\\write.xls"; 
  
  //워크북 생성
  HSSFWorkbook workbook = new HSSFWorkbook();
  
  //워크 시트생성 
  HSSFSheet sheet = workbook.createSheet("sheet name");
  
  //행 생성
  HSSFRow row = sheet.createRow(0);
  
  //셀 생성
  HSSFCell cell = row.createCell(0);
  
  //셀값 입력
  cell.setCellValue("test!");
  

  FileOutputStream fs = null;
  try {
   //파일로 저장
   fs = new FileOutputStream(filepath);
   workbook.write(fs);
   fs.close();
  } catch (IOException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
 }
 
}

 

 

이밖에 POI를 사용한다면 셀을 합친다거나, 셀의 스타일 속성을 부여하는 등의 여러가지 작업이 가능하다.

이러한 POI의 더 많은 기능들을 알고 싶다면 http://poi.apache.org/spreadsheet/quick-guide.html 을 참조하자

[출처] Excel - POI|작성자 gigar

 

728x90
반응형
블로그 이미지

nineDeveloper

안녕하세요 현직 개발자 입니다 ~ 빠르게 변화하는 세상에 뒤쳐지지 않도록 우리모두 열심히 공부합시다 ~! 개발공부는 넘나 재미있는 것~!

,