Bonjour,
Etant nouveau ici, je ne sais pas si je post au bon endroit mais au pire, je me ferais taper sur les doigts
J'ai créé une fonction qui permet de décoder et découper une string base64 vers de l'hexa.
Je récupère la structure du message dans un fichier XML.
Je range les infos que j'obtiens au fur et à mesure dans une IdentityHashMap:
Lorsque j'affiche cette map, elle contient les 7 éléments que je désire.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 for(...) { String key = ...; String value = ...; maMap.put(key,value); }
Là où ça coince, c'est que la méthode map.get("maClef") me renvoie "null" et map.containsKey("maClef") me renvoie "FAUX".
Là où ça devient fort, c'est que si dans la méthode de décodage/découpage je remplace par ceci:
A ce moment là, la méthode map.get("maClef") me renvoie la valeur associée et map.containsKey("maClef") me renvoie "VRAI".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 for(...) { String key = ...; String value = ...; if(key.compareTo("maClef") == 0) { maMap.put("maClef", value); } else { maMap.put(key,value); } }
La blague c'est que ce problème n’apparaît pas pour toutes les clefs.
Quelqu'un aurait une idée sur le soucis?
Je précise que j'ai fait les tests avec des méthodes comme compareTo(), matches() ou encore equals() pour vérifier que les chaines étaient bien identiques et que j'ai essayé de changer la longueur de la chaîne valeur des fois qu'elle soit trop grande.
Merci par avance
Partager