jxl 생성 excel
/**
*
*/
package com.automic.monitor.dailyWork.toExcel.util;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import jxl.Workbook;
import jxl.write.Colour;
import jxl.write.Label;
import jxl.write.WritableCell;
import jxl.write.WritableCellFormat;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;
import jxl.write.biff.RowsExceededException;
import com.automic.monitor.dailyWork.toExcel.pvo.FileVO;
/**
* @author hxb
*
*/
public class ExcelUtil {
private WritableWorkbook book;
private WritableSheet sheet;
/**
* @return ExcelUtil
*/
public static ExcelUtil getInstance(){
return new ExcelUtil();
}
/**
* @param savePath
* @return savePath
*/
public ArrayList<FileVO> getFiles(String savePath){
ArrayList<FileVO> vos = new ArrayList<FileVO>(0);
File f = new File(savePath);
File[] fs = f.listFiles();
for(int i = 0;fs != null && i < fs.length;i++){
File temp = fs[i];
FileVO vo = new FileVO();
vo.setName(temp.getName());
vo.setPath(savePath + vo.getName());
vos.add(vo);
}
return vos;
}
/**
* @param savePath
* @param fileName
* @return ,true: 、false:
*/
public boolean isExist(String savePath,String fileName){
File f = new File(savePath);
File[] fs = f.listFiles();
for(int i = 0;fs != null && i < fs.length;i++){
File ftemp = fs[i];
String nameTemp = ftemp.getName();
if(fileName != null && fileName.equals(nameTemp)){
return true;
}
}
return false;
}
/**
* @param dir
* excel sheet
* @throws IOException
* @return :false: 、true:
*/
public boolean createBookSheet(String saveFile,String sheetName,int sheetNo) throws IOException{
if(this.book == null){
this.book = Workbook.createWorkbook(new File(saveFile));
}
if(this.sheet == null || this.book.getSheet(sheetNo) == null){
this.sheet = this.book.createSheet(sheetName, sheetNo);
return true;
}
return false;
}
/**
* @param header
* @throws WriteException
* @return excel
*/
@SuppressWarnings("deprecation")
public int buildHeader(ArrayList<String> header) throws WriteException{
if(header == null || header.size() < 1){
return 0;
}
if(this.book == null || this.sheet == null){
return 0;
}
for(int i = 0;i < header.size();i++){
String content = header.get(i);
WritableCell cell = new Label(i,0,content);
WritableCellFormat format = new WritableCellFormat();
format.setBackground(Colour.GRAY_25);
cell.setCellFormat(format);
this.sheet.addCell(cell);
}
return 0;
}
/**
* @param oobj
* excel
* @throws WriteException
* @throws RowsExceededException
*/
public boolean buildContent(ArrayList<ArrayList<Object>> oobj) throws RowsExceededException, WriteException{
if(this.book == null || this.sheet == null){
return false;
}
for(int i = 0;oobj != null && i < oobj.size();i++){//
int row = i + 1;
ArrayList<Object> obj = oobj.get(i);
for(int k = 0;obj != null && k < obj.size();k++){//
Object o = obj.get(k);
WritableCell cell = new Label(k,row,(o == null ? "" : o.toString()));
this.sheet.addCell(cell);
}
}
return true;
}
/**
*
* @throws IOException
* @throws WriteException
*/
public void closed() throws IOException, WriteException{
if(this.book != null){
this.book.write();
this.book.close();
}
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
F#에서 Android 앱 개발 카운터(수취기)편F#에서 Android 앱 개발로서 카운터(수취기)의 작성 방법을 소개합니다. F#에서 Android 앱 개발의 기본은 다음 기사를 참조하십시오. 솔루션 탐색기의 Resources\layout\Main.axml을 열...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.