「Qtの基礎 - 文字列」の版間の差分

210行目: 210行目:
  <syntaxhighlight lang="c++">
  <syntaxhighlight lang="c++">
  QString str = QString::asprintf("フォーマット", データの並び);
  QString str = QString::asprintf("フォーマット", データの並び);
</syntaxhighlight>
<br><br>
== QString型からchar型またはstd::string型へ変換 ==
<code>QString</code>型はUTF-16でエンコードされているのに対して、<code>char</code>型または<code>std::string</code>型はどの種類のエンコーディングでもよいことに注意する。<br>
<br>
以下の例では、<code>QString</code>型(UTF-16)から<code>char</code>型(UTF-8)または<code>std::string</code>型(UTF-8)へ変換している。<br>
<syntaxhighlight lang="c++">
QString strUTF16 = "Sample";
// LinuxまたはMacOSにおいて、UTF-8を使用している場合
std::string strUTF8 = strUTF16.toUtf8().constData();
// Windowsにおいて、UTF-8を使用している場合
std::string strCurrentLocale = strUTF16.toLocal8Bit().constData();
  </syntaxhighlight>
  </syntaxhighlight>
<br><br>
<br><br>