public static void main(String[] args) {
try {
Workbook workbook = null;
try {
workbook = Workbook.getWorkbook(new File(
"F:\\(20100268号存量)测试案例.xls"));
} catch (Exception e) {
throw new Exception("file to import not found!");
}
int sheetSize = workbook.getNumberOfSheets();
Sheet sheet = null; for (int i = 0; i < sheetSize; i++) {
sheet = workbook.getSheet(i);
}
Cell cell = null; List list = new ArrayList();
int rowCount = sheet.getRows();
Class proj = project.class;
// 根据class对象获取属性
Field[] fields = proj.getDeclaredFields();
project proj1[] = new project[rowCount];
for (int i = 2; i < sheet.getRows(); i++) {
proj1[i] = new project();
for (int j = 0; j < sheet.getColumns(); j++) {
cell = sheet.getCell(j, i);// 获取单元格对象
    
    String propertity = fields[j].getName().substring(0,
fields[j].getName().length());


proj1[i] = getProject(propertity, cell.getContents(),
proj1[i]); //java反射造对象

}
list.add(proj1[i]);
}

workbook.close();
System.out.println(list.size());
for (int i = 0; i < list.size(); i++) {
project p = (project) list.get(i);
System.out.println("pid=" + p.getPid());
}
} catch (Exception e) {
e.printStackTrace();
}
}
打印结果:15
pid=日终网点签退统计-001
pid=
pid=
pid=日终网点签退统计-002
pid=
pid=
pid=日终网点签退统计-003
pid=
pid=
pid=日终网点签退统计-004
pid=
pid=
pid=日终网点签退统计-005
pid=
pid=
现在有合并单元格的垃圾数据.我现在想每次都拿一行,赋给对象,然后判断.pid是否为空.在做操作,现在怎么拿到行进行操作呢?

解决方案 »

  1.   

    关注 我现在正在学jxl导出excel
      

  2.   

    可以用map<key,value> KEY 为行标 ,value为一行的数据 就是这一行每个cell的值
    这里也可以存成一个map<key,value> key为列标,value为cell的值,这样结构就很清晰了
    Map<ROWINDEX,MAP<CELLINDEX,CELLVALUE>>
      

  3.   

    恩恩.是有呢.它是按Cell坐标取得.不好往对象里插入.