Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

FICHIER LOG


Information sur la source

Catégorie :Astuces Classé sous : log, fichier, ligne Niveau : Initié Date de création : 06/03/2003 Date de mise à jour : 06/03/2003 09:22:54 Vu : 7 688

Note :
9,5 / 10 - par 2 personnes
9,50 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (3)
Ajouter un commentaire et/ou une note

Description

Simple classe qui écrit une ligne dans un fichier de log
 

Source

  • package Log;
  • import java.io.*;
  • import java.text.*;
  • import java.util.*;
  • public class Log
  • {
  • private String nomFichier;
  • public Log(String n) {nomFichier = n;}
  • public void ecritLigne(String ligne)
  • {
  • try
  • {
  • FileWriter f = new FileWriter(nomFichier,true);
  • BufferedWriter bf = new BufferedWriter(f);
  • Calendar c = Calendar.getInstance();
  • Date maintenant = c.getTime();
  • String datelog = DateFormat.getDateTimeInstance(DateFormat.SHORT,DateFormat.MEDIUM,Locale.FRANCE).format(maintenant);
  • bf.write("[" + datelog + "]: " + ligne);
  • bf.newLine();
  • bf.close();
  • }
  • catch(IOException e)
  • {
  • System.out.println(e.getMessage());
  • }
  • }
  • public void ecritLigne(String entete,String info)
  • {
  • ecritLigne(entete + " > " + info);
  • }
  • }
package Log;

import java.io.*;
import java.text.*;
import java.util.*;

public class Log
{
	private String nomFichier;
	
	public Log(String n) {nomFichier = n;}

	public void ecritLigne(String ligne)
	{
		try
    	{
    		FileWriter f = new FileWriter(nomFichier,true);
    		BufferedWriter bf = new BufferedWriter(f);
    		Calendar c = Calendar.getInstance();
    		Date maintenant = c.getTime();
    		String datelog = DateFormat.getDateTimeInstance(DateFormat.SHORT,DateFormat.MEDIUM,Locale.FRANCE).format(maintenant);
    		bf.write("[" + datelog + "]: " + ligne);
    		bf.newLine();
    		bf.close();
    	}
    	catch(IOException e)
		{	
			System.out.println(e.getMessage());
		}
	}

	public void ecritLigne(String entete,String info)
	{
		ecritLigne(entete + " > " + info);
	}
}

Conclusion

Ecrit la date avant toute ligne. On peut aussi préciser un en-tête

simple à utiliser:
Log fl = new fl("c:\\Java.log");
fl.ecritLigne("Sans en-tête");
fl.ecritLigne("Texte de l'en-tête","Avec en-tête);

Ca peut servir
Niveau 2: utilisation des flux et des calendrier
 

Commentaires et avis

signaler à un administrateur
Commentaire de bvb le 11/04/2003 12:46:05

Simple, clair, utile et efficace.
Merci

signaler à un administrateur
Commentaire de lopiko le 22/01/2005 22:24:07

Toutes utilisations, je truff mes programes avec pour debuger.

DateFormat.short doit etre ecri DateFormat.SHORT c'est mieux.

Merci

signaler à un administrateur
Commentaire de badger71 le 27/12/2005 17:25:14

Pourquoi réinventer la roue ?

Je poste ce message au cas où quelqu'un tomberait sur cette source que je n'ai pas pris le temps de lire.

Si l'utilisation de log en tant que debug vous interesse, ragardez l'API  log4j disponible sur le site www.apache.org.

Il y a aussi le package java.util.loggin (de mémoire) depuis J2EE (Java 1.5)

Le premiere est a privilégiée, il y a plus de fonctionnalité, mais possède un inconvénient, il faut ajouter un .JAR lors du déploiement de l'application.

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

lecture fichier [ par kramp ] j'ai besoin de lire un fichier à une ligne donnée sans avoir à lire les lignes d'avant pour avoir un accès rapide à l'information (mon fichier a été i fichier jar et parametres en ligne de commande [ par cassenoisette ] Bonjours à tous.voila, j'ai un petit probleme, j'ai un prog en java qui genere beaucoup de fichier ".class", alors pour que cela soit moins le bordel, Lecture ligne à ligne d'un fichier [ par Abou ] Bonjour à tous,Je souhaiterai lire un fichier texte ligne à ligne. Je ne trouve pas de solution simple. Pouvez-vous m'aider ?Abou. Lire et changer le contenu d'un fichier [ par amadou ] Salut a tous.Moi j'ai un probleme.Avec une boucle while, j'aimerai lire le contenu d'un fichier ligne par ligne et decider si oui ou nom la ligne doit Votre aide svp..! [ par lelougarou ] Bonjour,Pourriez-vous me dire si vous connaisez une méthode pour lire un fichier HTML sur un serveur quelconque, en retenir une partie (de telle ligne Lecture aléatoire dans un fichier. [ par Darknik ] Bonjour,Voila, g un fichier avec un mot sur chaque ligne et je voudrai mettre dans une variable un de ces mots aléatoirement. J'arrive a lire le 1er m copie de fichier en java [ par refre ] bonjour, j'ai une copie de fichier a faire. en fait j'ai un fichier dans un dossier et j'aimerai en faire une copie dans un autre fichier... mais j'ai Supprimer une ligne de fichier avec RandomAccessFile [ par srx ] Bonjour,j'ai un petit problème concernant un fichier.Ce fichier contient des String (une par ligne) et je voudrais savoir comment faire pour en suppri Ligne d'une adresse, déduire la voix associée du FANTOIR [ par yray ] Le fichier FANTOIR est un fichier qui contient l'ensemble des voies de toutes les communes de franceJe saisie une ligne de caractères : 31 Bis rue des fichier log [ par merie ] quelq poura me dire comment je peut avoir des fichier log d'une site d'enseignement à distance


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,343 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.