Solution gratuite : lire des fichiers Excel en Java

2024-01-25 06:30:03 Tesia tian

Installer avec Maven

<dependency>
      <groupId>e-iceblue</groupId>
      <artifactId>spire.xls.free</artifactId>
      <version>5.1.0</version>
    </dependency>
    

La possibilité de lire des données à partir de fichiers Excel peut être utile dans divers secteurs et scénarios où des données structurées doivent être consultées et utilisées. En lisant les données d'Excel, vous pouvez extraire des informations, effectuer des calculs et analyser les données à l'aide de langages de programmation ou d'outils spécialisés. Ce processus permet une manipulation efficace des données et facilite des tâches telles que la génération de rapports, l'exécution d'analyses statistiques et l'automatisation des flux de travail.

Dans cet article, nous allons vous présenter comment lire des fichiers Excel en Java en utilisant E-iceblue Bibliothèque Java Excel gratuite. Les sous-thèmes suivants sont inclus.

Bibliothèque Java gratuite pour lire Excel

Free Spire.XLS for Java, fourni par E-iceblue Inc., est une bibliothèque Java petite mais puissante qui permet aux développeurs de créer, lire et modifier sans effort des fichiers Excel XLS et XLSX. Bien qu'il s'agisse d'une édition communautaire de la bibliothèque commerciale Spire.XLS for Java, elle offre presque toutes les capacités de gestion d'Excel, à l'exclusion de la conversion de format de fichier. Les utilisateurs peuvent l'utiliser pour créer facilement un document Excel à partir de zéro ou effectuer des opérations sur des documents existants, comme récupérer des données à partir d'une feuille de calcul.

Pour installer la bibliothèque à partir du référentiel Maven, ajoutez simplement la configuration suivante au fichier pom.xml de votre projet.

<repositories>
        <repository>
            <id>com.e-iceblue</id>
            <name>e-iceblue</name>
            <url>https://repo.e-iceblue.com/nexus/content/groups/public/</url>
        </repository>
    </repositories>
    <dependencies>
        <dependency>
            <groupId>e-iceblue</groupId>
            <artifactId>spire.xls.free</artifactId>
            <version>5.1.0</version>
        </dependency>
    </dependencies>

Alternativement, vous pouvez télécharger gratuitement Spire.XLS for Java et importez manuellement le fichier jar en tant que dépendance dans votre application Java.

Lire la valeur d'une cellule en Java

Dans Free Spire.XLS, la classe CellRange représente une cellule ou une plage, et la méthode getValue() sous la classe récupère la valeur d'une cellule spécifique, qui peut être du texte, un nombre ou une formule. Suivez les étapes suivantes pour lire la valeur d'une cellule en Java.

  1. Créez un objet Workbook.
  2. Chargez un fichier Excel dans l'objet Workbook.
  3. Obtenez une feuille de calcul spécifique à partir de l'objet Workbook.
  4. Obtenez une plage de cellules spécifique (dans ce cas, la cellule C6) à partir de la feuille de calcul.
  5. Récupérez la valeur de la cellule à l'aide de la méthode getValue().
  • Java
import com.spire.xls.CellRange;
    import com.spire.xls.Workbook;
    import com.spire.xls.Worksheet;
    
    public class ReadCellValue {
    
        public static void main(String[] args) {
    
            // Create a Workbook object
            Workbook wb = new Workbook();
    
            // Load an Excel file
            wb.loadFromFile("C:\\Users\\Administrator\\Desktop\\Score Sheet.xlsx");
    
            //Get a specific worksheet
            Worksheet sheet = wb.getWorksheets().get(0);
    
            // Get a specific cell
            CellRange certainCell = sheet.getCellRange("C6");
    
            // Get the value of the cell
            String cellValue = certainCell.getValue();
    
            // Print out result
            System.out.println("C6 has the value: " + cellValue);
        }
    }

Free Solution: Read Excel Files in Java

Lire les données d'une plage de cellules en Java

Maintenant que nous avons appris comment obtenir la valeur d'une cellule particulière, il est facile d'extraire des données d'une région de cellule en parcourant les cellules une par une. Les étapes pour lire les données d'une plage de cellules spécifique sont les suivantes.

  1. Créez un objet Workbook.
  2. Chargez un fichier Excel dans l'objet Workbook.
  3. Obtenez une feuille de calcul spécifique à partir de l'objet Workbook.
  4. Obtenez une plage de cellules (dans ce cas, A3:F6) à partir de la feuille de calcul.
  5. Parcourez les cellules de la plage à l’aide de boucles imbriquées.
  6. Dans chaque itération, obtenez une cellule spécifique dans la plage.
  7. Récupérez la valeur de la cellule à l'aide de la méthode getValue().
  8. Répétez le processus pour toutes les cellules de la plage.
  • Java
import com.spire.xls.CellRange;
    import com.spire.xls.Workbook;
    import com.spire.xls.Worksheet;
    
    public class ReadCellRange {
    
        public static void main(String[] args) {
    
            // Create a Workbook object
            Workbook wb = new Workbook();
    
            // Load an Excel file
            wb.loadFromFile("C:\\Users\\Administrator\\Desktop\\Score Sheet.xlsx");
    
            //Get a specific worksheet
            Worksheet sheet = wb.getWorksheets().get(0);
    
            // Get a cell range
            CellRange cellRange = sheet.getCellRange("A3:F6");
    
            // Iterate through the cells in the range
            for (int i = 0; i < cellRange.getRowCount(); i++) {
    
                for (int j = 0; j < cellRange.getColumnCount(); j++) {
    
                    // Get a specific cell
                    CellRange certainCell = cellRange.get(3 + i, 1 + j);
    
                    // Get the value of the cell
                    String cellValue = certainCell.getValue();
    
                    // Print out result
                    System.out.print(cellValue + " ");
                }
                System.out.println();
            }
        }
    }

Free Solution: Read Excel Files in Java

Lire les données d'une feuille de calcul entière en Java

Pour identifier la plage de cellules contenant des données, utilisez la méthode Worksheet.getAllocatedRange(), qui génère un objet CellRange. En parcourant les cellules de la plage, vous pouvez accéder à chaque cellule et à sa valeur correspondante. Voici les étapes pour lire les données d’une feuille de calcul entière en Java.

  1. Créez un objet Workbook.
  2. Chargez un fichier Excel existant dans l'objet Workbook.
  3. Obtenez la première feuille de calcul de l'objet Workbook.
  4. Utilisez la méthode getAllocatedRange() sur la feuille de calcul pour récupérer la plage de cellules contenant des données.
  5. Parcourez chaque ligne de la plage localisée à l’aide d’une boucle for.
  6. Dans chaque itération de ligne, parcourez chaque colonne de la plage localisée en utilisant une autre boucle for.
  7. Obtenez une cellule spécifique dans la plage localisée à l'aide de la méthode get(), en transmettant les indices de ligne et de colonne.
  8. Récupérez la valeur de la cellule à l'aide de la méthode getValue().
  9. Répétez le processus pour toutes les cellules de la plage.
  • Java
import com.spire.xls.CellRange;
    import com.spire.xls.Workbook;
    import com.spire.xls.Worksheet;
    
    public class ReadWorksheet {
    
        public static void main(String[] args) {
    
            //Create a Workbook object
            Workbook wb = new Workbook();
    
            //Load an existing Excel file
            wb.loadFromFile("C:\\Users\\Administrator\\Desktop\\Score Sheet.xlsx");
    
            //Get the first worksheet
            Worksheet sheet = wb.getWorksheets().get(0);
    
            //Get the cell range containing data
            CellRange locatedRange = sheet.getAllocatedRange();
    
            //Iterate through the rows
            for (int i = 0; i < locatedRange.getRows().length; i++) {
    
                //Iterate through the columns
                for (int j = 0; j < locatedRange.getColumnCount(); j++) {
    
                    // Get a specific cell
                    CellRange certainCell = locatedRange.get(i + 1, j + 1);
    
                    // Get the value of the cell
                    String cellValue = certainCell.getValue();
    
                    // Print out result
                    System.out.print(cellValue + " ");
                }
                System.out.println();
            }
        }
    }

Free Solution: Read Excel Files in Java

Lire la formule dans une cellule en Java

Si une cellule contient une formule, vous pouvez obtenir la formule en utilisant soit la méthode getValue(), soit la méthode getFormula(). Voici les étapes pour lire la formule d’une cellule en Java.

  1. Créez un objet Workbook.
  2. Chargez un fichier Excel dans l'objet Workbook.
  3. Obtenez une feuille de calcul spécifique à partir de l'objet Workbook.
  4. Obtenez une cellule spécifique (D4 dans ce cas) de la feuille de calcul.
  5. Vérifiez si la cellule contient une formule en utilisant la méthode hasFormula().
  6. Si la cellule contient une formule, récupérez la formule à l'aide de la méthode getFormula().
  • Java
import com.spire.xls.CellRange;
    import com.spire.xls.Workbook;
    import com.spire.xls.Worksheet;
    
    public class ReadFormula {
    
        public static void main(String[] args) {
    
            // Create a Workbook object
            Workbook wb = new Workbook();
    
            // Load an Excel file
            wb.loadFromFile("C:\\Users\\Administrator\\Desktop\\Formula.xlsx");
    
            //Get a specific worksheet
            Worksheet sheet = wb.getWorksheets().get(0);
    
            // Get a specific cell
            CellRange certainCell = sheet.getCellRange("D4");
    
            // Determine if the cell has formula or not
            if (certainCell.hasFormula()){
    
                // Get the formula of the cell
                String formula = certainCell.getFormula();
    
                // Print out result
                System.out.println("D4 has a formula: " + formula);
            }
        }
    }

Free Solution: Read Excel Files in Java

Lire le résultat de la formule dans une cellule en Java

Dans de nombreux cas, les utilisateurs sont principalement intéressés par les résultats produits par les formules plutôt que par les formules elles-mêmes. Pour obtenir le résultat d'une formule, utilisez la méthode getFormulaValue() . Voici les étapes pour lire le résultat de la formule dans une cellule en Java.

  1. Créez un objet Workbook.
  2. Chargez un fichier Excel dans l'objet Workbook.
  3. Obtenez une feuille de calcul spécifique à partir de l'objet Workbook.
  4. Obtenez une cellule spécifique (D4 dans ce cas) de la feuille de calcul.
  5. Vérifiez si la cellule contient une formule en utilisant la méthode hasFormula().
  6. Si la cellule contient une formule, récupérez le résultat de la formule à l'aide de la méthode getFormulaValue() et convertissez le résultat en représentation sous forme de chaîne à l'aide de la méthode toString().
  • Java
import com.spire.xls.CellRange;
    import com.spire.xls.Workbook;
    import com.spire.xls.Worksheet;
    
    public class ReadFormulaResult {
    
        public static void main(String[] args) {
    
            // Create a Workbook object
            Workbook wb = new Workbook();
    
            // Load an Excel file
            wb.loadFromFile("C:\\Users\\Administrator\\Desktop\\Formula.xlsx");
    
            //Get a specific worksheet
            Worksheet sheet = wb.getWorksheets().get(0);
    
            // Get a specific cell
            CellRange certainCell = sheet.getCellRange("D4");
    
            // Determine if the cell has formula or not
            if (certainCell.hasFormula()){
    
                // Get the result of formula
                String formulaResult = certainCell.getFormulaValue().toString();
    
                // Print out result
                System.out.println("D4 has a formula and its result is: " + formulaResult);
            }
        }
    }

Free Solution: Read Excel Files in Java

Conclusion

Dans cet article de blog, nous avons expliqué le processus de récupération de données (texte et nombres) à partir d'une cellule spécifique, d'une plage de cellules désignée ou d'une feuille de calcul Excel entière à l'aide de Free Spire.XLS for Java. Nous avons également expliqué comment déterminer si une cellule contient une formule et exploré des méthodes pour extraire à la fois la formule elle-même et la valeur qui en résulte. En tant que bibliothèque Excel professionnelle, Free Spire.XLS for Java prend en charge les extraction d'images et objets OLE également à partir de documents Excel.

Pour plus de tutoriels, veuillez consulter notre Guide de programmation Excel. Si vous avez des questions, n'hésitez pas à nous contacter via le Forum Spire.XLS.

Voir également