public void parseExcel2007()
{
String filePath = System.getProperty("user.dir") + File.separator
+ "config" + File.separator + "2007.xlsx";
FileInputStream fis = null;
try
{
fis = new FileInputStream(filePath);
XSSFWorkbook workbook = new XSSFWorkbook(fis);
int numberOfSheets = workbook.getNumberOfSheets(); // 得到总的sheet数量
System.out.println(numberOfSheets + "----2007");
if (numberOfSheets == 0)
{
//当EXCEL中没有sheet则认为不需要解析
return;
}
//得到第一个sheet页
XSSFSheet sheet = workbook.getSheetAt(0);
int rowNum = sheet.getLastRowNum();
System.out.println("此sheet页的行数为:"
+ rowNum);
if (rowNum <=0)
{
//如果该sheet中的行数小于等于0,则认为不需要解析该EXCEL文件
return ;
}
String value = "";
XSSFRow row = null;
XSSFCell cell = null;
//由于第一行为标题,所以从第一行开始
for (int i = 1; i <= rowNum; i++)
{
row = sheet.getRow(i);
if(null == row)
{
//当遇到空行,则进入下一轮循环
continue;
}
cell = row.getCell(0);
if(null == cell)
{
//当第一列为空,则进入下一轮循环
continue;
}
// 得到每行第一列的值
value = cell
.getStringCellValue().trim();
if(null == value || value.isEmpty())
{
//当第一列的值为空,则进入到下一轮循环
continue;
}
}
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
finally
{
if(null!=fis)
{
try
{
//关闭FileInputStream流
fis.close() ;
}
catch (IOException e)
{
e.printStackTrace();
}
}
}
}
在用POI解析2007的EXCEL的时候需要用到的JAR包可以在网上下载,这些包都是有依赖的,目前还没有研究出那个JAR包可以删除的