Ok, si vous connaissez un peu de syntaxe C++, ces bouts de code devraient bien vous intéresser.
Vous allez voir, c'est magique dès qu'on a les fonctions clés.
Pour le principe, les stringstream sont des flux du même genre que cout, cin et cerr. Mais vous pouvez les manipuler comme des chaines de caractères ... !!!
Vous avez besoin d'ouvrir un nouveau fichier main.cc et d'y mettre :
#include
#include
#include
#include
using namespace std;
//Ok nous voilà parés
int main(){
//J'ai une variable quelconque
int a = 2;
//Je veux un stringstream
stringstream ss;
//je veux un fichier (non vide c mieux ^^)
fstream f("votre_fichier",fstream::in); //Notez le fstream::in, qui permet d'ouvrir en lecture)
//Je vais lire mon fichier jusqu'au bout, en récupérant chaque 'mot'
// les 'mots' sont séparés par des espaces
//Je prend une chaine de caractères
string c;
while(f.good())
{
f >> c;
}
//dans c , vous avez le dernier mot lu.
//vous pouvez par exemple prévenir que :
ss << "Dernier mot lu : " << c << endl;
cout << ss.str();
//On a mis le message dans le stringstream et on affiche le contenu du //stream dans cout ensuite.
//On récupère la string correspondant au stream avec :
string contenu= ss.str();
//et on peut avoir ça en char*, pour les string et les streams avec :
char* contenu = new char[100];
contenu = c.c_str();
//Ou
contenu = ss.str().c_str();
//C'est pratique aussi pour passer des commandes système
//vous ajoutez :
#include
//Et vous faite votre commande avec le stream
ss << "cp " << monfichier.str() << "_version" << numversion;
//Par exemple :D
//Puis
system(ss.str().c_str());
//Enfin, le dernier truc magique indispensable,
//Pour remettre à zéro un stream qui contient déjà quelque chose
ss.str("");
//Simplissime ? ... ouais c sur, mais faut juste le savoir :), c ça qu'est bon
};
Voilà un premier exemple sur les stringstream, testez ça, c'est magique.
Depuis que j'ai commencé, je ne peux plus arrêter ^^... je suis accro
À vous d'jouer.
Aucun commentaire:
Enregistrer un commentaire