Why does Qt reject a valid JSON?

c++, json, qt

Solution

I have no idea of Qt, so I googled for a second. Here's what I found:

What you have is a string, a text representation. It's not the binary format Qt uses internally. The binary data would not be readable. `QJsonDocument::fromBinaryData` expects such a binary blob.

What you want to do seems to be achieved with `QJsonDocument::fromJson` which expects an UTF8-encoded Json string.

Problem

Using Qt-5.0, I have this JSON string ``` {"type":"FILE"} ``` I expected that `fromBinaryData` accept `.toLocal8Bit()` of the string as a valid format but it doesn't. ``` QString j = "{\"type\":\"FILE\"}"; auto doc = QJsonDocument::fromBinaryData(j.toLocal8Bit()); doc.isNull() // It's true, means the entry is not valid ``` Did I miss something?

Original source