J'ai essayé de rediriger System.out PrintStream vers un JTextPane. Cela fonctionne correctement, sauf pour l'encodage des caractères régionaux spéciaux. J'ai trouvé beaucoup de documentation à ce sujet (voir par exemple mindprod encoding page), mais je me bats toujours avec. Des questions similaires ont été postées dans StackOverFlow, mais l'encodage n'a pas été traité autant que je l'ai vu.Comment rediriger toutes les sorties de la console vers un Swing JTextArea/JTextPane avec le bon encodage?
Première solution:
String sUtf = new String(s.getBytes("cp1252"),"UTF-8");
Deuxième solution devrait utiliser java.nio. Je ne comprends pas comment utiliser le jeu de caractères.
Charset defaultCharset = Charset.defaultCharset() ;
byte[] b = s.getBytes();
Charset cs = Charset.forName("UTF-8");
ByteBuffer bb = ByteBuffer.wrap(b);
CharBuffer cb = cs.decode(bb);
String stringUtf = cb.toString();
myTextPane.text = stringUtf
Aucune solution ne fonctionne. Une idée?
Merci à l'avance, jgran
hors question le sujet: pourquoi les deux utilisateurs - jgran (OP) et jgran (answerer: http: //stackoverflow.com/questions/1522444/how-to-redirect- all-console-output-to-a-swing-jtextarea-jtextpane-avec-le-droit/1530213 # 1530213)? – akf
Mon erreur ... devrait avoir la FAQ plus sérieusement. Donc, le même utilisateur! –