salut tt le monde,
dans mon application, je lis un fichier texte qui ressemble à ca :
Je desire récupérer les informations contenues dans les lignes du milieu (celles qui commencent par FR200...). Sachant que le nombre de ces lignes est variable et que leur nombre est indiqué par Total. J'ai donc écrit un bout de code pour retrouver ce total :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Name OpSys Arch State Activity LoadAv Mem ActvtyTime FR20023738.co WINNT51 INTEL Unclaimed Idle 0.000 1016 0+01:20:00 FR20041685.co WINNT51 INTEL Unclaimed Idle 0.170 1016 0+01:05:04 Machines Owner Claimed Unclaimed Matched Preempting INTEL/WINNT51 2 0 0 2 0 0 Total 2 0 0 2 0 0
Par contre, je bloque sur la manière de récupérer les lignes en question, puis leur découpage...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 fseek( pFile, 0L, SEEK_SET ); int poolSize; char buffer[100]; while (fscanf(pFile,"%s", buffer)!=EOF) { if (strcmp(buffer, "Total") == 0) fscanf(pFile, "%d", &poolSize); }
J'ai écrit cela :
Mais ca ne marche pas... Et puis de toute facon, je sais pas comment mettre la ligne courante dans une variable sachant que le nb de ligne (et donc le nombre de variable est inconnue avant l'execution du programme)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 char line[100]; int lCount = 0; while ( fgets(line, 100, pFile) ) { if (lCount >= 3 && lCount <= 3+poolSize) { istringstream iss( line ); } ++lCount; }
![]()
Partager