std::filesystem::path:: c_str, std::filesystem::path:: native, std::filesystem::path:: operator string_type()
From es.cppreference.net
<
cpp
|
filesystem
|
path
|
const
value_type
*
c_str
(
)
const
noexcept
;
|
(1) | (desde C++17) |
|
const
string_type
&
native
(
)
const
noexcept
;
|
(2) | (desde C++17) |
|
operator string_type
(
)
const
;
|
(3) | (desde C++17) |
Accede al nombre de ruta nativo como una cadena de caracteres.
1)
Equivalente a
native
(
)
.
c_str
(
)
.
2)
Devuelve la representación en formato nativo de la ruta por referencia.
3)
Devuelve la representación en formato nativo del nombre de ruta por valor.
Contenidos |
Parámetros
(ninguno)
Valor de retorno
La representación nativa de cadena del nombre de ruta, utilizando sintaxis nativa, tipo de carácter nativo y codificación de caracteres nativa. Esta cadena es adecuada para su uso con APIs del sistema operativo.
Notas
La función de conversión (3) se proporciona para que las APIs que aceptan std::basic_string nombres de archivo puedan utilizar rutas de acceso sin realizar cambios en el código.
Ejemplo
Ejecutar este código
#include <cstdio> #ifdef _MSC_VER #include <fcntl.h> #include <io.h> #else #include <clocale> #include <locale> #endif #include <filesystem> #include <fstream> int main() { #ifdef _MSC_VER _setmode(_fileno(stderr), _O_WTEXT); #else std::setlocale(LC_ALL, ""); std::locale::global(std::locale("")); #endif std::filesystem::path p(u8"要らない.txt"); std::ofstream(p) << "File contents"; // Prior to LWG2676 uses operator string_type() // on MSVC, where string_type is wstring, only // works due to non-standard extension. // Post-LWG2676 uses new fstream constructors // Native string representation can be used with OS-specific APIs #ifdef _MSC_VER if (std::FILE* f = _wfopen(p.c_str(), L"r")) #else if (std::FILE* f = std::fopen(p.c_str(), "r")) #endif { for (int ch; (ch = fgetc(f)) != EOF; std::putchar(ch)) {} std::fclose(f); } std::filesystem::remove(p); }
Salida posible:
File contents
Véase también
|
devuelve la ruta en formato de nombre de ruta nativo convertida a una cadena
(función miembro pública) |
|
|
devuelve la ruta en formato de nombre de ruta genérico convertida a una cadena
(función miembro pública) |