IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

Chaines de caractères non égales


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    328
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 328
    Par défaut Chaines de caractères non égales
    Bonjour,

    voici le code qui pose problème :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    String contenuCellule = cellule.getRichStringCellValue().getString ().trim();
    String contenuAttenduCellule = resource.getString("colonne_"+i).trim();
    if(!contenuCellule.equals(contenuAttenduCellule)) {
                                break;
    }
    Je récupère dans la variable contenuCellule le contenu d'une cellule excel de type chaine de caractère. Dans la seconde variable contenuAttenduCellule, je récupère une chaine de caractère présente dans un fichier .properties.

    Ce code est présent dans une boucle afin de contrôler l'entête (la première ligne) d'un fichier excel. Si le texte dans la cellule ne respecte pas le contenu attendu pour la cellule, je sors de la boucle et je retourne une erreur.

    Le problème est que j'ai exécuté ce code et que je rentre toujours dans le if. Les 2 chaines de caractères sont donc à priori différentes. Hors ce n'est pas le cas ! Lorsque j'utilise le mode debug de netbeans et que je met un point d’arrêt au niveau du if, le contenu des 2 chaines de caractères est égal. Hors je rentre dans le if ce qui signifie qu'elles ne sont pas égales.

    Auriez-vous une idée du problème ?

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Citation Envoyé par ulspider Voir le message
    Lorsque j'utilise le mode debug de netbeans et que je met un point d’arrêt au niveau du if, le contenu des 2 chaines de caractères est égal. Hors je rentre dans le if ce qui signifie qu'elles ne sont pas égales.
    Ben faut croire qu'elles sont pas égales

    Auriez-vous une idée du problème ?
    Met ceci dans ton code et dit nous ce que ça sort:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    String contenuCellule = cellule.getRichStringCellValue().getString ().trim();
    String contenuAttenduCellule = resource.getString("colonne_"+i).trim();
    if(!contenuCellule.equals(contenuAttenduCellule)) {
              System.out.println("Inegalité. contenuAttenduCellule="+Arrays.toString(contenuAttenduCellule.getBytes("UTF-8")));
              System.out.println("Inegalité. contenuCellule="+Arrays.toString(contenuCellule.getBytes("UTF-8")));
                                break;
    } else {
              System.out.println("Egalité. contenuCellule="+Arrays.toString(contenuCellule.getBytes("UTF-8")));
    }

  3. #3
    Membre émérite
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    328
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 328
    Par défaut
    En effet le problème venez bien de l'encodage et notamment des espaces qui étaient encodés différemment (bien que l'on ne voyait rien avec la fonction debug).

    Merci beaucoup

Discussions similaires

  1. Réponses: 2
    Dernier message: 16/03/2012, 12h16
  2. [Oracle] Requête avec une variable contenant une chaine de caractères accentué non trouvé
    Par chris0938 dans le forum PHP & Base de données
    Réponses: 19
    Dernier message: 07/01/2011, 21h23
  3. Chaine sans caractère non visualisable
    Par BaldeckJ dans le forum Requêtes
    Réponses: 0
    Dernier message: 13/08/2009, 12h03
  4. Chaines de caractères égales à 80% ?
    Par marot_r dans le forum VBA Access
    Réponses: 13
    Dernier message: 02/03/2009, 03h45
  5. Enlever les caractères non A-Z 0-9 d'une chaine
    Par Lucas Panny dans le forum SQL
    Réponses: 15
    Dernier message: 28/11/2008, 08h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo