반응형
※ 본 문서는 "Thema.문서보안 Excel-file, Java POI로 작업하기" 를 위해 작업한 문서입니다.
※ 참고링크 : Apache POI : 엑셀파일 쓰기
"Thema.문서보안 Excel-file, Java POI로 작업하기" 1. 암호화된 Excel-file을 Excel-VBA를 이용하여 Text-file로 생성한다.( Delimeter 이용 ) 2. Java로 Text-file을 읽는다. - Excel의 Cell내용중 '줄 바꿈'문자가 있을 경우, 라인 병합하기 3. Apache POI Library를 이용하여 결과를 Excel-file로 출력한다.( 신규 Excel-file 생성 ) |
2중배열( ArrayList<ArrayList<String>> )을 Excel-File로 생성합니다.
package Java;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import org.apache.poi.ss.usermodel.BorderStyle;
import org.apache.poi.ss.usermodel.CellStyle;
import org.apache.poi.ss.usermodel.FillPatternType;
import org.apache.poi.ss.usermodel.IndexedColors;
import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFFont;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
/**
* 2중배열의 DATA를 엑셀로 출력
* : Apache POI Library를 이용하요 Excel-file을 생성한다.
*
* @author PSG
*
*/
public class Xls2Txt_WriteXls {
public static void exportExcel( ArrayList<ArrayList<String>> arr2Data ) {
// Workbook 생성
@SuppressWarnings("resource")
XSSFWorkbook wb = new XSSFWorkbook(); // Excel 2007 이상
XSSFSheet sh = wb.createSheet( "Sheet1" );
XSSFRow row = null;
XSSFCell cell = null;
// Cell의 스타일을 적용한다.
CellStyle csBase = wb.createCellStyle();
// 글꼴
XSSFFont fBase = wb.createFont();
fBase.setFontName( "나눔고딕코딩" ); // Font
fBase.setFontHeightInPoints( (short) 8 ); // Font
csBase.setFont( fBase );
// 라인선(테두리선)
csBase.setBorderLeft( BorderStyle.THIN );
csBase.setBorderRight( BorderStyle.THIN );
csBase.setBorderTop( BorderStyle.THIN );
csBase.setBorderBottom( BorderStyle.THIN );
// DATA출력
for( int i = 0; i < arr2Data.size(); i++ ) {
ArrayList<String> arrData = arr2Data.get( i );
row = sh.createRow( i );
for( int k = 0; k < arrData.size(); k++ ) {
cell = row.createCell( k ); // 열
cell.setCellValue( arrData.get( k ) ); // DATA
cell.setCellStyle( csBase ); // CellStyle 적용
}
}
try {
String strFilePath = "E:/Test.xls";
FileOutputStream fOut = new FileOutputStream( strFilePath );
wb.write( fOut );
} catch (IOException e) {
e.printStackTrace();
System.exit(0);
}
}
}
실제 생성된 파일과 내용입니다.
끝.
반응형
'Study > Java' 카테고리의 다른 글
[프로젝트] 컬럼매핑정의서 정의 및 작성하기 (1) | 2019.12.20 |
---|---|
[Java] 시작문자로 개행된 줄 바꿈 내용을 라인 병합하기 (0) | 2019.12.08 |
[Java] 데이터 갯수로 개행된 줄 바꿈 내용을 라인 병합하기 (0) | 2019.12.08 |
[고찰] Java에서 줄 바꿈된 라인, 병합하기 (0) | 2019.12.08 |
[Java] 로또 번호 생성 - 작성 (0) | 2019.06.06 |