实际上我想从excel表(.xls和.xlsx)中获取特定数据,就像我在excel表中有一个列名电子邮件,我想只获取该列。这是我已编写的代码,但这是获取所有详细信息。请参阅我的语法。
包readfile;
import java.io.File;
import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
public class reademail {
public static void main(String[] args) throws Exception
{
File f=new File("C:\\Users\\LQRP0023\\Desktop\\try.xls");
Workbook wb=Workbook.getWorkbook(f);
Sheet s=wb.getSheet(0);
int row=s.getRows();
int col=s.getColumns();
for(int i=0;i<row;i++)
{
for(int j=0;j<col;j++)
{
Cell c=s.getCell(j,i);
System.out.print(c.getContents());
}
System.out.println("");
// TODO Auto-generated method stub
} }}
答案 0 :(得分:0)
您可能希望使用CellReference实用程序类来帮助您。
然后您可以执行以下操作:
Sheet sheet = workbook.getSheet("MyInterestingSheet");
CellReference ref = new CellReference("B12");
Row r = sheet.getRow(ref.getRow());
if (r != null) {
Cell c = r.getCell(ref.getCol());
}
这将允许您在给定的Excel样式引用中找到单元格
答案 1 :(得分:0)
您需要检查Cell
类型并调用相应的方法来获取值,例如:
switch(cell.getCellType()){
case Cell.CELL_TYPE_STRING:
String stringValue = cell.getStringCellValue();
break;
case Cell.CELL_TYPE_NUMERIC:
Number numericValue = cell.getNumericCellValue();
break;
}
对于Date
的单元格,您可以使用HSSFDateUtil
类检查格式为cell
的日期并获取值,例如:
if(HSSFDateUtil.isCellDateFormatted(cell)){
Date dateValue = cell.getDateCellValue();
}