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 6811 fois
Public
Internaute
Auteur de la publication
Axel
Membre junior
Auteur de 51 articles
|BIO_PSEUDO|
Commentaires récents

Publié par Fobec dans php5

En effet, Twitter a modifie la structure de son API. P'etre qu'un jour, on trouve le temps pour finaliser un wrapper pour la version 1.1

Publié par jyfv dans CMS

hgfdhgfdhgf

Publié par fffffff dans CMS

tesffff

Publié par Axel dans java

Bonjour,
cet exemple a ete prepare et compile sous Netbeans 7.2 ;)
S'il y a un soucis, n'hesite pas

Publié par Juslin dans java

Ca tombe bien et merci.