Rediriger la sortie d'erreur standard vers une JTextArea - Java - Programmation
Marsh Posté le 07-12-2003 à 14:29:49
regarde log4j déjà pour une structure de logging uniforme. Sinon tu peux rediriger les canaux de sortie et d'erreur vers un autre pipe, voir la classe java.lang.System dans la javadoc
Marsh Posté le 07-12-2003 à 14:57:26
http://www.google.com/search?hl=en [...] gle+Search
ça a pas l'air d'être prévu en standard.
À la louche, je dirais qu'il faut diriger le flux vers le Document du JTextArea http://java.sun.com/j2se/1.4.2/doc [...] ument.html
Le pb c'est que le flux fonctionne en continu et que le document fonctionne par actions (avec undo etc.) il faut donc adapter. Et j'ai pas vu d'adaptateur tout fait.
Marsh Posté le 07-12-2003 à 16:49:19
Merci pour vos conseils mais comme je suis à la bourre pour mon projet ; j'ai opté pour une solution plus brouillonne avec une class contenant JTextArea static qui utilise une fonction membre qui tape les messages d'erreurs dedans...
A mon avis si ce que je cherchais n'est pas courrant c'est que ça ne doit pas être la meilleur manière de faire.
remerci
Marsh Posté le 07-12-2003 à 16:54:36
nraynaud a écrit : ça a pas l'air d'être prévu en standard. |
nraynaud a écrit : |
bha c'est super simple ! tu surcharge la méthode write(int) d'un Outputstream, tu le fous dans un PrintStream et tu le colles en stderr ...
allez, en une ligne pour le fun :
Code :
|
si t'as le droit à plus de lignes, c'est quand même mieux de surcharger toutes les méthodes write de l'outputstream
edit : mais le mieux c'est d'utiliser des vrai produit de log comme le disait dark : log4j, ou le package logging du jdk1.4 (que j'ai toujours pas regardé)
Marsh Posté le 07-12-2003 à 18:23:57
ha ouais, pas mal, j'y avais pas pensé.
C'est que je suis pas encore habitiué au bons réflexes du java moi.
En tout cas merci à vous 3!
edit : orthographe quand tu nous tiens...
Marsh Posté le 07-12-2003 à 19:28:16
en meme temps, utiliser de System.err je vois pas trop l'interet si on sait d'avance que l'appli va systematiquement rediriger ça vers un textarea... à moins qu'on veuille capter des erreurs de parties du code independantes et qu'on ne peut modifier...
Marsh Posté le 09-12-2003 à 18:38:49
http://java.sun.com/j2se/1.4.2/doc [...] ng.Object)
merde, on est tous bigleux ou quoi ?
Marsh Posté le 09-12-2003 à 20:51:11
nraynaud a écrit : http://java.sun.com/j2se/1.4.2/doc [...] ng.Object) |
tu peux préciser le fond de ta pensée ?
Marsh Posté le 09-12-2003 à 20:55:38
Ben l'adaptation est déjà faite, j'avais gueulé qu'elle y était pas, t'avais fait une bidouille au scotch alors que par hasard je suis tombé dessus.
Marsh Posté le 09-12-2003 à 20:58:48
nraynaud a écrit : Ben l'adaptation est déjà faite, j'avais gueulé qu'elle y était pas, t'avais fait une bidouille au scotch alors que par hasard je suis tombé dessus. |
mais ca a rien à voir
Marsh Posté le 07-12-2003 à 14:10:09
Bonjour, je cherche à savoir si il est possible, en Java, de rediriger tous les messages d'erreurs vers un JTextArea?
Je cherche un peu l'équivalent du freopen en C mais je ne sais même pas vraiment comment sont géré les input des JTextArea en java (est-ce un peu comme les terminaux et leurs files decriptors en C (dev/tty sous Linux) ?)
Ou si je doit par exemple créé un thread écoutant la sortie et la redirigeant vers le JTextArea avec SetText?
J'ai aucune expérience en java c'est la raison pour laquelle je ne sais pas vraiment de quelle coté allé voir...
merci d'avance.
Message édité par peak le 07-12-2003 à 14:12:20