Namespaces
Variants

std::experimental::filesystem::path::string,wstring,u8string,...

De fr.cppreference.net
 
 
 
 
 
template< class CharT, class Traits = std::char_traits<CharT>,
          class Alloc = std::allocator<CharT> >
std::basic_string<CharT,Traits,Alloc>
    string( const Alloc& a = Alloc() ) const;
(1) (filesystem TS)
std::string string() const;
(2) (filesystem TS)
std::wstring wstring() const;
(filesystem TS)
std::string u8string() const;
(filesystem TS)
std::u16string u16string() const;
(filesystem TS)
std::u32string u32string() const;
(filesystem TS)

Renvoie le chemin interne au format natif du chemin, converti en un type de chaîne spécifique. La conversion, le cas échéant, est spécifiée dans todo.

1) Toutes les allocations mémoire sont effectuées par a.
2) L'encodage dans le cas de u8string() est toujours UTF-8.

Valeur de retour

Le chemin interne au format natif de chemin, converti en type de chaîne spécifié.

Exceptions

Peut lever des exceptions définies par l'implémentation.

Exemple

#include <clocale>
#include <cstdio>
#include <experimental/filesystem>
#include <fstream>
#include <iostream>
namespace fs = std::experimental::filesystem;
int main()
{
    std::setlocale(LC_ALL, "en_US.utf8");
    std::locale::global(std::locale("en_US.utf8"));
    fs::path p = fs::u8path(u8"要らない.txt");
    // native string representation can be used with OS APIs
    std::ofstream(p) << "File contents"; // this uses operator string()
    if (std::FILE* f = std::fopen(p.c_str(), "r"))
    {
        int ch;
        while ((ch=fgetc(f))!= EOF) putchar(ch);
        std::fclose(f);
    }
    // multibyte and wide representation can be used for output
    std::cout.imbue(std::locale());
    std::cout << "\nFile name in narrow multibyte encoding: "
              << p.string() << '\n';
    std::wcerr.imbue(std::locale());
    std::wcerr << "File name in wide encoding: "
               << p.wstring() << '\n';
    fs::remove(p);
}

Sortie possible :

File contents
File name in narrow multibyte encoding: 要らない.txt
File name in wide encoding: 要らない.txt

Voir aussi

retourne le chemin au format générique de nom de chemin converti en chaîne
(fonction membre publique)