Bonjour,
Y a-t-il moyen de récupérer les tabulations dans un fichier?
Merci d'avance
Version imprimable
Bonjour,
Y a-t-il moyen de récupérer les tabulations dans un fichier?
Merci d'avance
Ben tu les récupères naturellement, non?
Sinon, précise, poste le code, le fichier, etc.
en fait, je récupère les lignes du fichier comme cela :
std::ifstream file("data/yafarayRender.xml", std::ifstream::in);
std::string line;
file>>line;
Et quand je teste si line contient '\t' ça me renvoit faux. Il récupère que le texte, pas les tabulations
Exact, de cette façon tu ne récupère que les mots, pas les espaces ni les tabulations.
Tu trouvera dans la FAQ comment lire un fichier ligne par ligne.
ok merci beaucoup
Salut, et bienvenue sur le forum.
A vrai dire, si le fichier est en XML comme son extention semble l'indiquer, tu n'as strictement aucune raison de récupérer les tabulations.
En effet, dans les fichiers XML, les tabulation, espaces et autres retours à la ligne ne sont utilisé que... pour permettre à l'humain qui lira le fichier d'observer une certaine "mise en page", mais n'interviennent absolument pas dans la manière d'interpréter les différents noeuds ou leur contenu.
Ainsi, un contenu ressemblant à
sera évalué exactement de la même manière que s'il avait été écrit sous la forme deCode:<root><node1><node1_1>du texte assez long qui ne veut rien dire</node1_1><node1_2>encore du texte</node1_2></node1></root>
deCode:
1
2
3
4
5
6<root> <node1> <node1_1>du texte assez long qui ne veut rien dire</node1_1 <node1_2>encore du texte</node1_2> </node1> </root>
ou de toute autre combinaison d'espaces, de tabulations et de retours à la ligne que tu pourrait envisager de placer entre les différents mots.Code:
1
2
3
4
5
6
7
8
9<root> <node1> <node1_1>du texte assez long qui ne veut rien dire </node1_1> <node1_2>encore du texte </node1_2> </node1> </root>
Dés lors, pourquoi voudrais tu récupérer les tabulations, en sachant, en plus, que certains utiliseront la tabulation réelle (le caractère spécial '\t' en C et en C++) et que d'autres pourraient décider de les représenter sous la forme d'un nombre fixe d'espaces ( 4 ou 8, par exemple, mais pourquoi pas 13 :question: )