Bonjour J'ai actuellement un programme qui obtient un chemin complet de l'emplacement d'un fichier et est mis dans une variable qui est le type de: boost :: filesystem2 :: pathComment convertir le type de chemin boost en chaîne?
J'ai cherché comment faire cela et avoir constaté que l'utilisation:
string result1 = boost::filesystem::basename (myPath)
convertit le chemin de chaîne, mais il ne convertit que le nom du fichier (par exemple, si le chemin est « C: \ nom \ bobsAwesomeWordDoc.docx » il retourne juste « bobsAwesomeWordDoc »).
J'ai trouvé ce qui suit sur la façon de convertir le chemin entier en chaîne, mais je ne sais pas comment l'implémenter dans mon programme. J'ai essayé plusieurs façons mais j'ai des erreurs de conversion.
const std :: string &(): Cette routine renvoie une copie de la chaîne avec laquelle le chemin a été initialisé, avec la mise en forme par les règles de grammaire chemin.
(trouvé here)
J'ai essayé:
string result1 = string& (myPath);
et quelques autres variations.
Y a-t-il des garanties que la chaîne renvoie le chemin codé utf8 sur toutes les plateformes? –
@SergeyShambir: Malheureusement non. On peut explicitement utiliser 'u8string()', mais cela n'aide pas où 'string()' est utilisé automatiquement. –