Bonsoir,
J'ai une petite question qui va peut-être amené à une grande réponse ..
J'ai un JFormattedTextField qui reçoit via un JFileChooser le chemin d'accès d'un répertoire.
Dans mon code, j'effectue un getText sur ce JFormattedTextField et crypte le String(de retour) avec AES.
La fonction d'encryption d'AES utilise comme paramètre un Byte[] et retourne un Byte[], ainsi je suis obligé d'utiliser getBytes pour passer le String à la fonction d'encryption.
Ensuite, je stocke ce Byte[](que je vais appeller ici cryptedPath) dans un String en faisant :
String s = "";
for (int i = 0; i < cryptedPath.length; i++)
s += (char)cryptedPath[i];
Et pour finir, j'enregistre la classe sérialisé qui contient ce string dans un fichier.
Le soucis, c'est qu'en faisant tout ça, quand je veux rechargé la classe à partir du fichier les chemins d'accès qui contenaient des caractères accentués ne sont pas bien supportés. Quand je réaffiche ces chemins d'accès, les caractères accentués ne s'affichent pas correctement(ils sont remplacés par d'autres caractères bizarre).
Je précise que je suis sur kubuntu.
Je pense personnellement que c'est du à la fonction getBytes. Cette fonction renvoi un byte quand il s'agit d'un caractère normal et 2 bytes quand il s'agit d'un caractère accentué. Du coup, quand je caste mes bytes en char, il n'affiche rien de bon.. forcément. Et je n'ai pas d'idées sur comment résoudre ce problème.
Si vous pouviez m'aider, ce serait vachement cool.
Merci.
Bien à vous,
Moi.
Partager