write 화면
import java.io.File;
import java.io.FileOutputStream;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
public class ExcelWrite {
public ExcelWrite() {
try{
File f = new File("z://fileFolder", "excelTest.xls");
//WorkBook 생성
HSSFWorkbook workbook = new HSSFWorkbook();
//sheet 생성
HSSFSheet sheet1 = workbook.createSheet("주소록");
HSSFSheet sheet2 = workbook.createSheet();
//행 만들기
HSSFRow row1 = sheet1.createRow(0);
HSSFRow row2 = sheet1.createRow(1);
//cell 만들기
row1.createCell(0).setCellValue("번호");
row1.createCell(1).setCellValue("이름");
row1.createCell(2).setCellValue("전화번호");
row2.createCell(0).setCellValue(1);
row2.createCell(1).setCellValue("홍길동");
row2.createCell(2).setCellValue("010-2345-5678");
FileOutputStream fos = new FileOutputStream(f);
workbook.write(fos);
}catch(Exception e){
System.out.println(e.getMessage());
}
}
public static void main(String[] args) {
new ExcelWrite();
}
}
=====================================================================
read 화면
import java.io.File;
import java.io.FileInputStream;
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;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
public class ExcelRead {
public ExcelRead() {
try{
File f = new File("z://fileFolder/excelTest.xls");
FileInputStream fis = new FileInputStream(f);
POIFSFileSystem pfs = new POIFSFileSystem(fis); //엑셀파일 객체 만들기
HSSFWorkbook workbook = new HSSFWorkbook(pfs);
int sheetNum = workbook.getNumberOfSheets(); //sheet 수 구하기
System.out.println("시트 수 : "+sheetNum);
HSSFSheet sheet = workbook.getSheetAt(0);
//workbook.getSheet("주소록");
int rows = sheet.getPhysicalNumberOfRows(); //행의 수 구하기
System.out.println("행의 수 : "+rows);
for(int i=0; i<rows; i++){
HSSFRow row = sheet.getRow(i); //행 객체 구하기
int col = row.getPhysicalNumberOfCells(); //칸의 수 구하기
System.out.println("칸의 수 : "+col);
for(int j=0; j<col; j++){
HSSFCell cell = row.getCell(j);
if(i==1 && j==0){ //숫자 분리
System.out.print((int)cell.getNumericCellValue()+"\t");
}else{
System.out.print(cell.getStringCellValue()+"\t");
}
}
System.out.println();
}
}catch(Exception e){
System.out.println(e.getMessage());
}
}
public static void main(String[] args) {
new ExcelRead();
}
}