这里解析excel文件用了第三方所提供的一些类库。Jakarta的POI项目提供了一组操纵Windows文档的Java API,如下几个类提供了操作Excel文
件的方便的途径:HSSFWorkbook、HSSFSheet、HSSFRow、HSSFCell,分别代表了Excel电子表格中的Book、Sheet、行和单元格。你可以在下面地址下载到最新的POI工具包:
http://jakarta.apache.org/poi/index.html
一些常用操作如下:

//
所导入的第三方类包

import
org.apache.poi.hssf.usermodel.HSSFCell;

import
org.apache.poi.hssf.usermodel.HSSFRow;

import
org.apache.poi.hssf.usermodel.HSSFSheet;

import
org.apache.poi.hssf.usermodel.HSSFWorkbook;

import
org.apache.poi.poifs.filesystem.POIFSFileSystem;


//
初始化

POIFSFileSystem poiFs
=
new
POIFSFileSystem(inputStream);

HSSFWorkbook wb
=
new
HSSFWorkbook(poiFs);

HSSFSheet sheet
=
wb.getSheetAt(
0
);

int
rowNumber
=
sheet.getFirstRowNum();

int
lastRowNumber
=
sheet.getLastRowNum();
通过sheet.getRow(rowNumber)取得一行的数据。
对每一行HSSFRow,它可以通过getFirstCellNum(cellNum) or getLastCellNum(cellNum)取得此行的格数(列数)。
通过HSSFCell可以判断每个表格中的数据类型,DOC中描述如下:

static
int
CELL_TYPE_BLANK

Blank Cell type (
3
)

static
int
CELL_TYPE_BOOLEAN

Boolean Cell type (
4
)

static
int
CELL_TYPE_ERROR

Error Cell type (
5
)

static
int
CELL_TYPE_FORMULA

Formula Cell type (
2
)

static
int
CELL_TYPE_NUMERIC

Numeric Cell type (
0
)

static
int
CELL_TYPE_STRING

String Cell type (
1
)
这样,对于一个现有的excel文件,我们可以取得它所以行的数据,并对行中的每条数据根据不同的类型进行操作了!
将excel文件中的一行具体cell转换成java数据实例:
到了现在实中应用当然不会这么简单,此类库的更多功能我们可以参考其API,在此将中附带了API。
参考:http://jakarta.apache.org