Bonjour,
Je débute en C, et je dois faire un programme en C qui prend les informations importante d'une ligne de log afin de les mettre en base.
La ligne de log se présente comme ca:
Je dois prendre l' IP, la date, l'heure, le x=, u=, et n=;
Code : Sélectionner tout - Visualiser dans une fenêtre à part 2008-01-10 10:47:39|192.168.178.1|GET /images/tracker.gif?u=B&n=B12345&v=4&x=9987615609739640 HTTP/1.1|200|43|http://allocase/b12345.html
J'ai réussie à prendre l' ip, l'heure, et la date, sans trop de difficultée. Par contre je cherche depuis plusieurs jour à séparer les variable x, u, et n.
J'ai donc commencé par faire
Je ne sais pas si je suis sur la bonne voie. Si oui, je cherche comment copier le contenu de pointeur, qui est ma chaîne, entre start en end.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 if(strstr(pointeur, "GET ") != NULL){ char* end; char* start; start = strchr(pointeur, '='); end = strrchr(pointeur, '&');
J'ai vu ca sur les sources C
Mais je n'arrive pas très bien à comprendre le truc ni comment s'en servir.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 int subString (const char *chaine, int debut, int fin, char *result) { result[fin+1-debut] = '\0'; memcpy (result, (char *)chaine+debut, fin+1-debut); return (fin+1-debut); }
Merci d'avance,
Partager