Java 如何从第二行获取数据
我试图根据下面的标题获取数据。首先,我获取第一行,并将其存储在map中。但问题是我想从第二行获取数据,但我得到了迭代器。我如何从第二行获取数据Java 如何从第二行获取数据,java,excel,Java,Excel,我试图根据下面的标题获取数据。首先,我获取第一行,并将其存储在map中。但问题是我想从第二行获取数据,但我得到了迭代器。我如何从第二行获取数据 DataFormatter df=new DataFormatter(); Map<String,Integer> m=new HashMap<String,Integer>(); FileInputStream file = new FileInputStream(new File("/root/Docu
DataFormatter df=new DataFormatter();
Map<String,Integer> m=new HashMap<String,Integer>();
FileInputStream file = new FileInputStream(new File("/root/Documents/xyz.xlsx"));
//Get the workbook instance for XLS file
XSSFWorkbook workbook = new XSSFWorkbook(file);
//Get first sheet from the workbook
XSSFSheet sheet = workbook.getSheetAt(0);
Row row=sheet.getRow(0);
XSSFRow rowe = (XSSFRow)row;
int s=row.getLastCellNum();
System.out.println(s);
for(int i=0;i<s-1;i++){
String data= df.formatCellValue(rowe.getCell(i));
System.out.println(data);
m.put(data,i);
}
Iterator<Row> rows = sheet.rowIterator();
while (rows.hasNext()) {
XSSFRow rowa = (XSSFRow) rows.next();
System.out.println(df.formatCellValue(rowa.getCell(m.get("Member.Member Card Number"))));
}
这就是你要找的吗
int count =0;
while (rows.hasNext()) {
XSSFRow rowa = (XSSFRow) rows.next();
if(count !=0){
System.out.println(df.formatCellValue(rowa.getCell(m.get("Member.Member Card Number"))));
}
count++;
}
试试这样的
Vector cellVectorHolder = new Vector();
XSSFSheet mySheet = myWorkBook.getSheetAt(0);
Iterator rowIter = mySheet.rowIterator();
while(rowIter.hasNext()){
XSSFRow myRow = (XSSFRow) rowIter.next();
Iterator cellIter = myRow.cellIterator();
List list = new ArrayList();
while(cellIter.hasNext()){
XSSFCell myCell = (XSSFCell) cellIter.next();
list.add(myCell);
}
cellVectorHolder.addElement(list);
}
@不客气。如果您觉得有帮助,请将其标记为答案: