Bonjour,
Quelqu'un saurait-il comment découper un chemin de façon à avoir seulement le nom du dossier
Example:
X:\InfoP4\JMC\C++Builder\Théorie
Découper ce chemin de façon à avoir :
Théorie
merci d'avance de votre aide
Bonjour,
Quelqu'un saurait-il comment découper un chemin de façon à avoir seulement le nom du dossier
Example:
X:\InfoP4\JMC\C++Builder\Théorie
Découper ce chemin de façon à avoir :
Théorie
merci d'avance de votre aide
Bonjour
string::rfind et string::substr sont fait pour ça.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 #include <string> #include <iostream> using namespace std; int main(){ string s1 = "X:\\InfoP4\\JMC\\C++Builder\\Théorie"; string s2 = s1.substr(1+s1.rfind('\\')); cout << s2 << endl; return 0; }
bonjour
ici :
http://www.cplusplus.com/reference/c...ng/strtok.html
ou ceci mais c'est pas le top du top:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 vector<string> decouper(string chaine, char c){ int size=chaine.size(); int r=0; vector<string> v; for(int i=0; i<size; i++){ if (chaine[i]==c){ v.push_back(chaine.substr(r, i-r)); r=i+1; } } v.push_back(chaine.substr(r, size-r)); return v; }
Ma session aux Microsoft TechDays 2013 : Développer en natif avec C++11.
Celle des Microsoft TechDays 2014 : Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
Et celle des Microsoft TechDays 2015 : Visual C++ 2015 : voyage à la découverte d'un nouveau monde
Je donne des formations au C++ en entreprise, n'hésitez pas à me contacter.
Merci de votre réponse
mais j'ai trouvé ceci et ça marche très bien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 String GetDirectoryName(String Directory) { size_t i; char *tDirectoryName; i = strlen(Directory.c_str()); tDirectoryName[0] = '\0'; while(Directory.c_str()[i-1] != '\\') { i--; } strcpy(tDirectoryName,Directory.c_str() + i); return tDirectoryName; }
Partager