J'ai écrit une méthode Java qui utilise l'API POI HSSF pour convertir un fichier Excel en ma structure de données.Pourquoi une valeur de cellule est renvoyée en tant que chaîne vide même si elle contient du contenu?
Le code a bien fonctionné pendant un certain temps. Mais maintenant il y a soudainement des problèmes. Je suppose que c'est peut-être parce que récemment nous avons installé Office 2007 sur tous les ordinateurs clients, précédemment nous avions Office 2003.
Le problème que j'ai rencontré est: Dans le fichier XLS, j'ai une colonne de cellules qui est remplie avec serial- numéros par l'utilisateur. Lorsque l'application Java obtient la cellule, elle a un type de cellule STRING. Et quand je demande la valeur de chaîne de la cellule, j'obtiens une chaîne vide.
Le fichier est créé à l'origine par l'application, puis les utilisateurs le remplissent avec des données et le rechargent dans l'application. Donc, je ne pense pas que le format de fichier est faux, car il est créé par la même version de l'API.
Quel pourrait être le problème?
EDIT:
Précision: Nous avons pris une installation d'Office 2007, mais l'application utilise toujours le format HSSF et XLS. Seuls les utilisateurs ouvrent et modifient les fichiers avec Office 2007. Est-ce un problème?
Est-ce toutes les cellules de la colonne ou juste un en particulier? Nous avions l'habitude d'avoir des problèmes avec le POI lisant la valeur hors de la cellule active qui peut souvent se produire si la feuille est éditée par un utilisateur. –
Ce sont toutes les cellules de cette colonne. La particularité est, il y a une autre colonne qui est remplie avec des valeurs numériques, et il lit très bien ... – Malki
Utilisez le format de fichier POI-XSSF pour Excel 2007 OOXML (.xlsx) :) – Paul