Bonjour,

j'ai un fichier de paramètres dépendant du temps pour un programme qui est sous format CSV.
Ce fichier se présente sous la forme suivante:

Colonnes:
la variable temporelle en colonne. Il ya 480 mois (40 ans) => 480 colonnes



Lignes:
PLus de 1000 lignes. Chacune de ces lignes correspond à une simulation bien précise. Ces lignes sont ordonnées (plus petite simul vers la plus grande)
La première colonne reprend le numéro de la simulation.


J'aimerais faire qqch du style:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
int lastSimulation = 1000;
for (int i = 1; i<= lastSimulation; i++){
    std::ifstream fichier( "fichier.txt" );
 
    if ( fichier ) 
    {
        std::string ligne; 
        while ( std::getline( fichier, ligne ) ) {
               if( on est sur la ligne correspondant au compteur i)
                     doSomething();        
         }
     }
}
Le code (que j'ai retapé de mémoire ) fonctionne, mais le problème est que si le n° de simulation est dans le début du fichier, j'arrive à la fonction doSomething() (forcément) assez vite, par contre si la simulation est très loin dans le fichier, ca prend bcp de temps (une seconde contre qqs millisecondes).
Le temps étant très important pour moi, avez vous une idée pour acceder à une ligne particulière plus rapidement?

Merci bcp
David