Bonjour,
Actuellement en train de développer une appli java avec Swing, je rencontre un problème d'encodage sous windows (pourquoi faut il encore développer pour windows ? :/) et ceci à 2 moments.
Tout d'abord je saisis mes données via un formulaire et les enregistre dans des objets, à tout moment, quand je souhaite en faire l'affichage, les données enregistrées apparaissent correctement, mais ça se complique lorsque je veux les envoyer en xml, et enregistrer mon ensemble d'objets. Windows n'apprécie pas les caractères spéciaux.
Pour l'instant je n'ai travaillé qu'à débugguer l'export xml en créant une String sensée être formattée en UTF-8
Quand à la partie "enregistrement" de mes objets je le fais de cette façon :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 String xml = new String(xmlWithSpecialChars.getBytes(), "UTF-8");
Je suppose que quand je teste sur linux, ce dernier travaille directement en UTF8 contrairement à windows qui utilise probablement le charset ISO-8859 mais je ne sais pas comment rendre le fonctionnement identique entre les 2 systèmes. Auriez vous une solution à me soumettre ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 try{ File f= new File(...); fos = new FileOutputSteam(f); oos = new ObjectOutputStream(fos); oss.writeObject(monObjet); } catch(IOException ex){ ex.printStackTrace(); } finally [ fos.close(); oos.close(); }
Merci d'avance !
Partager