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

Publié par l'indik dans java

Sauf que si l'objet n'est plus utilisé, quand tu fait ton new , la mémoire sera automatiquement libéré si cela est nécessaire. Donc l'utilisation de System.gc() n'es...

Publié par habib dans CMS

je veu cree des applications base de donnee comme gestion park reforme du materielle les unites materielle entree sortie inventaire aidez moi email bettaharhabib1966@yahoo.fr <br>tel 0557187557...

Publié par olibul dans CMS

var
fn: string;

begin

Result:= False;
if strFont <> \'\' then begin

// Tester le nom: si affectation directe à TFont, modifications aléatoires

Publié par berrr dans news

Le PageRank de mon site www.specialvacances.com et toujours 0 pourquoi !

Publié par Fobec dans php5

Bonjour,
vous pouvez poster un message sur le forum, la communaut vous donnera un coup de main pour la mise en place du script.