2017-07-04 11 views
0

私はポストの要求でそれを要求することによってウェブサイトをスクラップしようとします。 !;のcharset奇妙な/読めない返されたjsonのエンコーディングQByteArrayによって読まれるためにQByteArrayが読む

^ÚÄÆ>>Ãñ

¤hóúôë¼zCリクエストのContent-Typeのは、「アプリケーション/ JSONですà:JSONで返されたデータは次のように、しかしunreadbleエンコーディングを持っています= utf-8 "となる。誰かがこの奇妙なエンコーディングについて考えていますか?先験的に要求は機能します。そうでない場合は、明示的なエラーがあります。ナビゲータと同じ要求は完全に読みやすい応答をします。 QNetworkRequestでQtを使用しています。答えはtoStdString()で読み取られたQByteArrayにあります。私がQJsonDocumentまたはQJsonObjectでQByteArrayを再フォーマットしようとすると、それを読む前に何も答えられません。 事前にありがとう

答えて

0

クラスをチェックし、スタティック関数を使用して、bytearrayをUTF-8形式で使用してJsonDocumentを構築します。

const QByteArray dataFromServer; 
QJsonParseError er; 
const QJsonDocument doc = QJsonDocument::fromJson(json, &er); 
if (er.error != QJsonParseError::NoError) { 
    return false; 
} 

その後、QJsonObjectを取り、そしてそれは、リストのかどうかを確認します。

リストを繰り返したり、指定した値にアクセスしたりすることができます。
関連する問題