工程需要引入 f1j9swing.jar包
執行導出Excel案例:詳見360雲盤,“經典詳例Demo”
package sinosoft_xsy;
import java.io.IOException;
import com.f1j.ss.BookModelImpl;
import com.f1j.ss.CellFormat;
import com.f1j.ss.Constants;
import com.f1j.ss.WriteParams;
import com.f1j.util.F1Exception;
public class Sinosoft {
static CellFormat mCellFormat = new CellFormat();
static CellFormat mLeftTopCF = new CellFormat();
static CellFormat mInputCF = new CellFormat();
public static void main(String[] args) {
testExcel();
}
/**
* 使用f1j9swing來生成excel
*/
public static void testExcel(){
BookModelImpl book = new BookModelImpl();
BookModelImpl modelBook = new BookModelImpl();
try {
book.initWorkbook();
setCellFormat();
//讀取已有的模板
modelBook.read("E:\\workspace3.7\\gs_acc\\hkcwweblogic\\account\\yd_work\\BulletinReport\\BulletinReport_1.xls");
//讀取模版Excel,所有cell的樣式在這里面定義好 ,每生成一個sheet就copy下,最省事
book.copyRange(0, 0, modelBook.getLastRow(), modelBook.getLastCol(), modelBook,
0, 0, modelBook.getLastRow(), modelBook.getLastCol(), Constants.eCopyAll);
for (int i = 0; i <= modelBook.getLastCol(); i++) {
book.setColWidth(i, modelBook.getColWidth(i));//設置列寬,即模板中的列為多寬,則生成的excel的列也為多寬
}
book.setText(2,0,"2015年05月21日");
for (int m = 9; m <= 34; m++) {//實際要顯示的xls要放值的開始行和結束行
System.out.println(m);
book.setNumber(m-1, 3, 11);
book.setNumber(m-1, 4, 11);
book.setNumber(m-1, 5, 11);
}
book.setSheetName(0, "本季度快報");
book.insertSheets(0, 1);
// Excel文件輸出
book.write("E:\\workspace3.7\\gs_acc\\hkcwweblogic\\account\\yd_work\\BulletinReport\\BulletinReport_111111.xls", new WriteParams(BookModelImpl.eFileExcel97));// Excel文件輸出
} catch (OutOfMemoryError e) {
e.printStackTrace();
} catch (F1Exception e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
public static void setCellFormat() throws F1Exception{
//生成單元格格式
mCellFormat.setLeftBorder(CellFormat.eBorderThin);
mCellFormat.setRightBorder(CellFormat.eBorderThin);
mCellFormat.setTopBorder(CellFormat.eBorderThin);
mCellFormat.setBottomBorder(CellFormat.eBorderThin);
mCellFormat.setVerticalInsideBorder(CellFormat.eBorderThin);
mCellFormat.setFontName("宋體");
//左上角格式
mLeftTopCF.setFontName("宋體");
mLeftTopCF.setFontSize(200);//10號
mLeftTopCF.setFontBold(true);//粗體
mLeftTopCF.setHorizontalAlignment(CellFormat.eHorizontalAlignmentLeft);//居左
mLeftTopCF.setVerticalAlignment(CellFormat.eVerticalAlignmentCenter);//垂直居中
//輸入數據的單元格的格式
mInputCF.setLeftBorder(CellFormat.eBorderThin);
mInputCF.setRightBorder(CellFormat.eBorderThin);
mInputCF.setTopBorder(CellFormat.eBorderThin);
mInputCF.setBottomBorder(CellFormat.eBorderThin);
mInputCF.setFontName("宋體");
mInputCF.setFontSize(200);
mInputCF.setHorizontalAlignment(CellFormat.eHorizontalAlignmentCenter);//居中
mInputCF.setVerticalAlignment(CellFormat.eVerticalAlignmentCenter);//垂直居中
}
}