2011-04-05 7 views
3

J'ai une feuille Excel. Je veux écrire une méthode qui prend le paramètre en tant que numéro de colonne à lire et retourner un tableau composé de toutes les données dans cette colonne.Lire une seule colonne de feuille Excel en utilisant java

Puis de placer cet élément de colonne dans une feuille xml. Comment puis-je écrire une méthode pour le faire?

Répondre

7

Utilisez Apache POI. Vous pouvez trouver un exemple dans leur page d'utilisation.

Sheet sheet1 = wb.getSheetAt(0); 
for (Row row : sheet1) { 
    for (Cell cell : row) { 
    // Here you might have to use the cell number to limit what you want. 
     CellReference cellRef = new CellReference(row.getRowNum(), cell.getCellNum()); 
     System.out.print(cellRef.formatAsString()); 
     System.out.print(" - "); 

     switch(cell.getCellType()) { 
     case Cell.CELL_TYPE_STRING: 
     System.out.println(cell.getRichStringCellValue().getString()); 
     break; 
     case Cell.CELL_TYPE_NUMERIC: 
     if(DateUtil.isCellDateFormatted(cell)) { 
      System.out.println(cell.getDateCellValue()); 
     } else { 
      System.out.println(cell.getNumericCellValue()); 
     } 
     break; 
     case Cell.CELL_TYPE_BOOLEAN: 
     System.out.println(cell.getBooleanCellValue()); 
     break; 
     case Cell.CELL_TYPE_FORMULA: 
     System.out.println(cell.getCellFormula()); 
     break; 
     default: 
     System.out.println(); 
     } 
    } 
} 
+1

Certainement le POI est la voie à suivre en ce qui concerne la lecture de feuilles de calcul Excel à partir de Java. –

2

Vous trouverez peut-être cette réponse utile: How to get columns from Excel files using Apache POI

qui a tout le code dont vous avez besoin pour extraire toutes les valeurs numériques d'une colonne, si elles sont une cellule numéro ou une cellule de formule contenant un certain nombre résultat. Je suppose que tu auras besoin de quelque chose comme ça.

Questions connexes