最終更新日時(UTC):
が更新

履歴 編集

function
<filesystem>

std::filesystem::path::generic_u8string(C++17)

std::string generic_u8string() const;

概要

UTF-8エンコードで、環境非依存パスフォーマットのパス文字列を取得する。

戻り値

*thisが保持するシステムの環境非依存パスフォーマットを持つパスを、UTF-8エンコードで返す。

POSIXベースシステムでの例

#include <iostream>
#include <filesystem>

namespace fs = std::filesystem;

int main()
{
  fs::path p = "/usr/bin/clang";

  const std::string s = p.generic_u8string();
  std::cout << s << std::endl;
}

出力

/usr/bin/clang

Windowsでの例

#include <iostream>
#include <filesystem>

namespace fs = std::filesystem;

int main()
{
  fs::path p = "foo\\bar";

  const std::string s = p.generic_u8string();
  std::cout << s << std::endl;
}

出力

foo/bar

Windowsでの例は、Visual C++が正式にファイルシステムライブラリをサポートしていないことから、未検証のサンプルコード・出力となっている。

バージョン

言語

  • C++17

処理系