Question

Type de comptant Montant

15 Vérification 52.42

23 économies 51.51

11 Vérification 12.21

est mon tabulation de fichier délibéré

J'aimerais pouvoir rechercher des lignes par le numéro de compte.Dis si je mets en 23 ans, je veux obtenir cette ligne spécifique.Comment l'ID ferait-il cela?

Aussi plus avancé, si je voulais modifier une valeur spécifique, dites le montant 51.51 en compte 23. Comment puis-je chercher cette valeur et la remplacer par une nouvelle valeur?

Jusqu'à présent, je ne fais que lire dans la rangée par rangée

ligne de cordes; ifstream est ("compte.txt");

 if (is.is_open())
 {
while (std::getline(is, line))  // read one line at a time
{
    string value;
    string parseline;
    std::istringstream iss(line);

    getline(line, parseline);
    cout << parseline << endl;  // do something with the value
    while (iss >> value)    // read one value at at time from the line
    {
        //cout << line << "   ";    // do something with the value
    }
}
is.close();
 }
 else
     cout << "File cant be opened" << endl;

return 0;

Était-ce utile?

La solution

étant donné que chaque ligne est de longueur variable, il n'y a aucun moyen d'indexer une ligne particulière sans d'abord l'analyse du fichier entier.

Mais je suppose que votre programme voudra manipuler des rangées et des colonnes aléatoires.Je commencerais donc par analyser tout le dossier.Mettez chaque ligne dans sa propre structure de données dans un tableau, puis indice que la rangée de la matrice.

Vous pouvez utiliser "strtok" pour scinder l'entrée en rangées, puis strutok à nouveau pour diviser chaque ligne dans des champs.

Autres conseils

Si je devais faire cela, je voudrais d'abord écrire quelques fonctions qui analysent l'ensemble du fichier et stockeraient les données dans une structure de données appropriée (telle qu'une matrice ou STD :: map).Ensuite, j'utiliserais la structure de données pour les opérations requises (telles que la recherche ou l'édition).Enfin, j'écrirais la structure de données dans un fichier s'il y a des modifications.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top