std::filesystem::path:: c_str, std::filesystem::path:: native, std::filesystem::path:: operator string_type()
From ru.cppreference.net
<
cpp
|
filesystem
|
path
|
const
value_type
*
c_str
(
)
const
noexcept
;
|
(1) | (начиная с C++17) |
|
const
string_type
&
native
(
)
const
noexcept
;
|
(2) | (начиная с C++17) |
|
operator string_type
(
)
const
;
|
(3) | (начиная с C++17) |
Обращается к собственному имени пути как к строке символов.
1)
Эквивалентно
native
(
)
.
c_str
(
)
.
2)
Возвращает представление пути в собственном формате по ссылке.
3)
Возвращает представление пути в собственном формате по значению.
Содержание |
Параметры
(нет)
Возвращаемое значение
Нативное строковое представление пути, использующее нативный синтаксис, нативный тип символов и нативную кодировку символов. Эта строка подходит для использования с API операционной системы.
Примечания
Функция преобразования (3) предоставляется для того, чтобы API, принимающие std::basic_string в качестве имен файлов, могли использовать пути без изменений в коде.
Пример
Запустить этот код
#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); }
Возможный вывод:
File contents
Смотрите также
|
возвращает путь в формате родного пути, преобразованный в строку
(публичная функция-член) |
|
|
возвращает путь в формате универсального пути, преобразованный в строку
(публичная функция-член) |