JXL(Java Excel API)是一個用來動態讀寫Excel文件的開放源碼項目,
利用它可以在任何支持Java的操作系統上動態讀寫Excel文件。
JXL的主頁是:http://www.andykhan.com/jexcelapi/或是http://sourceforge.net/projects/jexcelapi/
下載到它的最新的版本。下載下來的壓縮檔解開後,可以找到jxl.jar
要如何讓你的程式能讀到Jxl.jar的函式?
加入Classpath,有以下不同的方式
跟java sdk一樣加入到系統的classpath
每次開機電腦都會自動連此jar檔,真的很常用到嗎?
利用command line執行時候
javac –classpath “擺放jxl的目錄” XXX.java
利用IDE來輔助寫程式
打開eclipse?在右邊樹狀圖中你所建立的project按右鍵Build path?add external achieves?選取jxl.jar
在程式中引入函式庫
import jxl.*;
先建立Workbook 整份的Excel檔案,可指定檔名。
Workbook workbook = Workbook.getWorkbook(new File("test.xls"));
建立Sheet每個Excel檔案下面可以跳tag的sheet表。
Sheet sheet = workbook.createSheet("我的Excel表", 0);
第一個參數是sheet name,第二個參數是第幾張sheet,當然index是由0開始算。
選擇第一個工作簿(從0開始)
Sheet sheet = workbook.getSheet(0);
選擇位置為C2的單元格(兩個參數都從0開始)
Cell c2 = sheet.getCell(2,1);
把單元格中的信息以字符的形式讀取出來
String stringc2 = c2.getContents();
不論是數字型、日期型,通過getContents(),返回值都是字串型。
如果有需要知道Cell內容的確切類型,API也提供了一系列的方法。
getType()
CellType.LABEL、CellType.NUMBER 、CellType.DATE
依據不同的型態利用不同的方法來取值
getString();、getvalue();、getDate();
if(c00.getType() == CellType.LABEL)
{
LabelCell labelc00 = (LabelCell)c00;
strc00 = labelc00.getString();
}
if(c00.getType() == CellType.LABEL)
{
DateCell labelc00 = (DateCell)c00;
strc00 = labelc00.getDate();
}
儲存格Cell的格式
WritableCellFormat cellFormat1 = new WritableCellFormat ();
cellFormat1.setFont(chFont11w); // 指定字型setFont
cellFormat1.setBackground(Colour.DARK_GREEN);
cellFormat1.setAlignment(Alignment.CENTRE);
cellFormat1.setBorder(Border.ALL, BorderLineStyle.THIN, Colour.GRAY_80);
留言列表