QString と UTF-8の変換

お久しぶりです。QStringとUTF-8など別の文字コードを相互変換するには、QTextCodecを使います。便利すぎますね!

#include <QTextCodec>

std::string s; // UTF-8の文字が設定されてる、という事で

QTextCodec* codec = QTextCodec::codecForName( "UTF-8" );

// UTF8 から Unicode へ
QString string = codec->toUnicode( s.c_str(), s.length() );

// Unicode から UTF8 へ
QByteArray utf8_str = codec->fromUnicode( string );