Qt4:QStringをchar*にする方法と日本語を使えるようにする方法
#include <iostream> #include <QString> #include <QTextCodec> int main(int argc, char *argv[]){ // utf-8な文字列をQStringが受け付けるようにする。 QTextCodec::setCodecForCStrings(QTextCodec::codecForName("utf-8")); // utf-8な文字列をtr()が受け付けるようにする。 QTextCodec::setCodecForTr(QTextCodec::codecFotName("utf-8")); QString str("QStringな文字列オブジェクトです。"); // 文字コードを指定して出力。 std::cout << str.toUtf8().data() << std::endl; // システムで設定されているロケールで出力されるはずのコード。うまく動かない。 std::cout << str.toLocal8Bit().data() << std::endl; return 0;
とりあえず文字コードがさっぱり予想つかない状況で何か作る事は当面無いだろうから、文字コード決め打ちでしばらくはやっていくます。