Class c++ de conception de fichier rapport (log)

Soyez le premier à donner votre avis sur cette source.

Vue 5 646 fois - Téléchargée 438 fois

Description

Voici une source qui vous facilitera la vie, pour tout ceux qui veulent intégrer un suivi d'activé du programme dans un rapport.
En bref si vous voulez que votre prog ecrive un log.

Plus d'info dans le .h

Source / Exemple :


#ifndef TLog_H
#define TLog_H
#include <string.h> //strlen();strcpy();strcmp();
#include <stdio.h> //fseek();fread();fopen();fwrite();fputs();
#include <time.h>  //time();strftime();localtime();

#define SUCCES 1
#define ERROR 0
#define SZ_INFINITE 0	   //infinite size file.
#define SZ_DEFAULT 1024    //default size file 1Ko.
#define SZ_DEFAULT_MSG 255 //default size of log's msg.
#define TF_DEFAULT "%d/%m/%Y %H:%M:%S>" //Default time format string.
#define DEFAULT_HEADER \
"****************************************************************\r\n\

  • Log File Header *\r\n\
                                                                                                                                • \r"
typedef unsigned long ULONG; class TLog { private: FILE * F; char * pFileName; char * pHeader; char * pTimeFormat; ULONG ulMaxSize; ULONG FileSize; ULONG LogCount; ULONG LogSize; time_t td; int RewindPtrLog(); public: TLog(const char* const FileName, ULONG MaxSize, const char* const Header, const char * const TimeFormat); int NewLog(const char* const Msg, bool timer = true); int ReadLogN(ULONG n, char * Msg); int SlimLog(); int DelLogs(); int CmpHeader(); ULONG SizeLog(); ULONG CountLog(); ULONG SizeFile(); ~TLog(); }; #endif

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
96
Date d'inscription
dimanche 16 février 2003
Statut
Membre
Dernière intervention
23 septembre 2007

mdr
J'ai un source qui fait hello world si vous voulez :-)
Messages postés
1878
Date d'inscription
jeudi 16 octobre 2003
Statut
Membre
Dernière intervention
16 mars 2011
1
Bj

une fonction similaire

globale à ts mes sources

elle est un poil moins complete mais toute aussi utile

Bien
++
Nono.

______________________________
void saveToErrorLog(const char* message, const char* nomFichier)
{
/// ---------------------------------------------------------------------------------------------
/// ---------------- saveToErrorLog(const char* message ,const char* nomFichier) ----------------
/// ---------------------------------------------------------------------------------------------
/// ----- Objectif : Ecriture d'une trace ds un fichier
/// ----- Auteur(s) : magic_nono 26/04/02 & 26/08/03
/// ----- PreCond : /
/// ----- PostCond : Trace insérée en fin de fichier
/// ----- Etat : 1 (-1<0<1<2)
/// ---------------------------------------------------------------------------------------------
/// ----- const char* message : explicatif, texte
/// ----- const char* nomFichier(par défaut : '"trace.b"') : cf.nom
/// ---------------------------------------------------------------------------------------------
/// ----- Var Muettes (cf.partie préc) (2) : message ,nomFichier
/// ----- Var Internes à la fonction (1) : fichier
/// ----- Var In (2) : message ,nomFichier
//pas de trace
FILE*fichier;
if((fichierfopen(nomFichier,"at")) NULL) /// Nota : le 't' serait superflus, il indique qu'il s'agit d'un fichier textuel...
{
fprintf(stderr,"erreur durant l'ouverture du fichier %s.\n\n",nomFichier);
exit(5); //pas PB() ici...
}
// fseek(fichier,0,SEEK_END); /// TODO : inst utile ? (ouverture avec 'a'...)
fputs(message,fichier);
fputc('\n',fichier);
fclose(fichier);


//écriture ds la barre de débug : OutputDebugString("txt");
}

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.