明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

在Java中讀取Excel文件的內(nèi)容

[摘要]可隨意轉(zhuǎn)載,但請注明出處及作者SonyMusic2003.05.15=================================================================...
可隨意轉(zhuǎn)載,但請注明出處及作者
SonyMusic
2003.05.15
==========================================================================
在Java中讀取Excel文件的內(nèi)容

在這里,我使用的是一個(gè)叫Java Excel API的東西,類似的還有jakarta的POI,不過感覺那個(gè)
太復(fù)雜了點(diǎn)兒。而且jxl對中文的支持相當(dāng)?shù)暮,至少我在用的過程中一點(diǎn)問題沒出。

一、下載地址
http://www.andykhan.com/jexcelapi/

二、特性
可以讀取Excel 95, 97, 2000文件
可以讀或?qū)慐xcel 97及其以后版本的的公式(不過我發(fā)現(xiàn)好像有bug)
生成Excel 97格式的電子表格
支持字體、數(shù)字和日期格式化
支持單元格的顏色和陰影
可以編輯現(xiàn)有的文件

三、讀文件
//聲明一下,記得后面要關(guān)閉哦。。
Workbook workbook = null;

try {
workbook = Workbook.getWorkbook(new File("d:\\temp\\TestRead.xls"));
} catch (Exception e) {
throw new Exception("file to import not found!");
}

Sheet sheet = workbook.getSheet(0);
Cell cell = null;

int columnCount=3;
int rowCount=sheet.getRows();
for (int i = 0; i <rowCount; i++) {
for (int j = 0; j <columnCount; j++) {
//注意,這里的兩個(gè)參數(shù),第一個(gè)是表示列的,第二才表示行
cell=sheet.getCell(j, i);
//要根據(jù)單元格的類型分別做處理,否則格式化過的內(nèi)容可能會不正確
if(cell.getType()==CellType.NUMBER){
System.out.print(((NumberCell)cell).getValue());
}
else if(cell.getType()==CellType.DATE){
System.out.print(((DateCell)cell).getDate());
}
else{
System.out.print(cell.getContents());
}

//System.out.print(cell.getContents());
System.out.print("\t");
}
System.out.print("\n");
}
//關(guān)閉它,否則會有內(nèi)存泄露
workbook.close();