Platform::String の内容を変換して、char* ベースの文字列を期待する関数で使用するにはどうすればよいですか? WinRT がこのためのヘルパー関数を提供していると思いますが、それらを見つけることができません。
ありがとう!
Platform::String の内容を変換して、char* ベースの文字列を期待する関数で使用するにはどうすればよいですか? WinRT がこのためのヘルパー関数を提供していると思いますが、それらを見つけることができません。
ありがとう!
Platform::String::Data()
wchar_t const*
文字列の内容へのポインタを返します ( と同様std::wstring::c_str()
)。 Platform::String
は不変の文字列を表すため、. を取得するためのアクセサーはありませんwchar_t*
。変更するには、その内容を にコピーする必要がありますstd::wstring
。
aまたは aを直接取得する方法はありません。これは、ワイド文字を使用するためです (すべての Metro スタイル アプリは Unicode アプリです)。を使用してマルチバイトに変換できます。char*
char const*
Platform::String
WideCharToMultiByte
raw Unicode 文字列である returnというString::Data
メソッドがあります。const char16*
Unicode から ascii などへの変換、つまりchar16*
へchar*
の変換は別の問題です。wchar
最近はほとんどのメソッドに独自のバージョンがあるため、おそらく必要ありません。