chercher un format specific dans une ligne string
bonjour,
je voudrais chercher un format de string dans une ligne donnee sachant que cet format sera XX:YY, X et Y etant des nombres entiers... je voudrais ensuite mettre XX et YY dans des variables de type int minutes et int secondes.
un example de lignes lues seraient
Gershwin,_Rhapsody_In_Blue 13:22 Gershwin,_George Masters_of_the_Roll,_Volume_05 Classical 1
je voudrais obtenir 13 la mettre dans "int minutes" et 22 dans "int secondes". Et ce pour chaque ligne.
ma lecture se fait avec le code suivant:
Code:
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
|
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
using namespace std;
main()
{
vector <string> lines(0);
string s,title;
int i;
ifstream infile("exemple.txt");
while (!infile.eof()) {
getline(infile, s);
if (!infile.fail()) lines.push_back(s);
}
for (i = lines.size()-1; i >= 0; i--) {
/* exclusion des tirets du bas en les replacant par des espaces */
int position = lines[i].find("_");
while (position != string::npos)
{
lines[i].replace(position,1," ");
position =lines[i].find("_",position+1);
}
}
} |
j'ai essaye de lire chaque ligne dans la for loop en faisant :
lines[i] >> title >> time >> auteur;
sans success,
des proposition sur comment proceder pour d'abord trouver les minutes et secondes et ensuite stocker les autres strings (variable et titre) dans des variables.
merci