Publié le 21/09/2010
Auteur axel
Réseaux sociaux
0 partages
0 tweets
0 plus
1 commentaires

Rediriger les donnees de la console vers un fichier

Pendant l'exécution d'une application JAVA, les données de debug s'affichent dans la console. Tous les IDE affichent ces informations en bas de la fenêtre afin de permettre au développeur de suivre l’exécution de son logiciel. La console se composent notamment des erreurs et des alertes qui permmettent de trouver plus facilement l'origine des bugs.

Enregistrer la console dans un fichier

Pour faciliter la lecture ou établir un log, la console peut ętre redirigée vers un fichier texte. Dans l'exemple ci-joint, le nom du fichier est unique et basé sur l'heure actuelle.
import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintStream;
import java.text.SimpleDateFormat;
import java.util.Date;
 
/**
 * Rediriger les entrées de la console vers un fichier
 */
public class TheMainClass {
 
    public static void main(String[] args) {
        //Créer un nom de fichier basé sur la date et l'heure
        SimpleDateFormat filePattern = new SimpleDateFormat("ddMMyyyy_HHmm");
        String filename=filePattern.format(new Date()) + ".txt";
        //ouvrir le fichier
        File file = new File("c://myapp_"+filename);
        try {
            PrintStream printStream = new PrintStream(file);
            System.setOut(printStream);
            System.out.println("Exemple de log de l'application JAVA");
            System.out.println("Tout ce qui apparait dans la console est repris dans le fichier");
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
    }
}

Un usage de la redirection de la console est d'écrire un fichier log. Par exemple, lorsque l'utilisateur vous remonte un bug dont il ne sait pas trop comment cela est arrivé, l'enregistrement des erreurs dans un fichier permet d'avoir un peu plus d'information.

Ajouter un commentaire

Les champs marqués d'un * sont obligatoires, les adresses emails se sont pas publiées.
avatar fredouille

Publié par fredouille

le 05/05/2011 à 16:27:26

Il ne faut pas oublier de mettre aussi System.setErr(printStream); pour ne pas oublier les printStackTrace() declenches par le catch

A lire aussi

Réseaux sociaux
Présentation de l'article
Catégorie
java - tutorial
Mise a jour
21/09/2010
Visualisation
vu 6725 fois
Public
Internaute
Auteur de la publication
Axel
Membre junior
Auteur de 51 articles
|BIO_PSEUDO|
Commentaires récents

Publié par gilles dans logiciel

Bonjour,

j'utilise quotidiennement votre excellent logiciel complet et ergonomique.

Mais depuis quelques jours j'ai un probleme il recherche indefiniment resolution du nom de l'hote.

Publié par jean-francois dans logiciel

Bonjour,
je suis tombe par hasard sur cette page que je trouver super. je cherche a faire quelque chose comme ca sur mon site. Et je galere depuis des jours... :(
Est-ce que tu partages le...

Publié par foufou0406 dans CMS

merci !!!

Publié par Kader dans java

Tres interessant. Merci Bien! Est ce possible de mettre la couleur sur toute la ligne au lieu de la cellule?

Publié par Marmz dans java

Super ! pile ce que je cherchais , merci Mr Fobec