-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathLectureLog.cpp
104 lines (80 loc) · 3.09 KB
/
LectureLog.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
/*************************************************************************
LectureLog - Classe lisant une ligne d'un fichier
-------------------
début : 21/01/2019
copyright : (C) Mathéo ATCHE et Andréa CROC
e-mail : [email protected] et [email protected]
*************************************************************************/
//#define _CRT_SECURE_NO_WARNINGS
//---------- Réalisation de la classe <LectureLog> (fichier LectureLog.cpp) ------------
//---------------------------------------------------------------- INCLUDE
//-------------------------------------------------------- Include système
#include<fstream>
#include <iostream>
using namespace std;
//------------------------------------------------------ Include personnel
#include "LectureLog.h"
//------------------------------------------------------------- Constantes
const char SEP = ',';
//----------------------------------------------------------------- PUBLIC
//----------------------------------------------------- Méthodes publiques
void LectureLog:: LireLigneFichierLog ( ifstream & fic )
// Algorithme :
//On récupère les informations de la ligne courante du fichier
//donné en paramètre pour les mettre dans l'objet LectureLog
//qui a appelé cette méthode
{
string tmp;
getline(fic,ligneFichier.ip,' ');
getline(fic,tmp,'[');
getline(fic,ligneFichier.date,' ');
getline(fic,tmp,'"');
getline(fic,ligneFichier.typeAction,' ');
getline(fic,ligneFichier.url,' ');
getline(fic,tmp,'"');
getline(fic,tmp,'"');
getline(fic,ligneFichier.referer,'"');
int pos = ligneFichier.referer.substr(0,31).find("intranet-if");
if(pos!=-1)
{
ligneFichier.referer.erase(0,31);
}
getline(fic,tmp);
} //----- Fin de LireLigneFichierLog
//------------------------------------------------- Surcharge d'opérateurs
ostream & operator << ( ostream & os, const LectureLog & lect )
// Algorithme :
//On affiche sur le flux de sortie les attributs d'un objet LectureLog
{
os<<lect.ligneFichier.ip<<SEP<<lect.ligneFichier.date<<SEP<<lect.ligneFichier.typeAction;
os<<SEP<<lect.ligneFichier.url<<SEP<<lect.ligneFichier.referer<<endl;
return os;
} //----- Fin de operator <<
//-------------------------------------------- Constructeurs - destructeur
//LectureLog::LectureLog ( const LectureLog & unLectureLog )
// Algorithme :
//
/*{
#ifdef MAP
cout << "Appel au constructeur de copie de <Xxx>" << endl;
#endif
} //----- Fin de LectureLog (constructeur de copie)*/
LectureLog::LectureLog (Ligne l)
// Algorithme :
//Initialiser l'attribut d'un objet LectureLog
{
ligneFichier = l;
#ifdef MAP
cout << "Appel au constructeur de <LectureLog>" << endl;
#endif
} //----- Fin de LectureLog
LectureLog::~LectureLog ( )
// Algorithme :
//Rien à préciser
{
#ifdef MAP
cout << "Appel au destructeur de <LectureLog>" << endl;
#endif
} //----- Fin de ~LectureLog
//------------------------------------------------------------------ PRIVE
//----------------------------------------------------- Méthodes protégées