Web API から JSON を取得する C++ Qt 4.7 アプリを作成しようとしています。私はいくつかの読書をしましたが、JsonCppが最高のようです。だから私はそれを見つけてビルドし、プロジェクトに追加しました。
void RetrievingInformationPage::replyFinished(QNetworkReply *reply)
{
Json::Value root;
Json::Reader reader;
bool success = reader.parse(reply->readAll().data(), root);
// here be issues
qDebug() << QString::fromStdString(root["data"][30]["name"].toStyledString());
return;
}
このコードを実行すると、テストしている名前 (Unicode を含む名前) が出力されますが、特殊文字は完全に意味不明 ("à¤?à¥à¤²à¤¿à¤«à¤°à ¥à¤¡」)。Unicode は JSON 文字列 "\u0915\u094d\u0932\u093f\u092b\u0930\u094d\u0921" として入力され、JsonCpp がそれを実際の Unicode 文字に変換すると仮定します。QString::fromStdString がユニコードを std::string に取り、それを QString に格納することを望んでいましたが、明らかにどこかが台無しになっています。
私は何が欠けていますか?