1

我有一个客户端服务器设置。客户端将 JSON 文档序列化为二进制格式。客户端将二进制数据发送到服务器。服务器应将 char * 缓冲区转换回 JSON 字符串。

我没有找到使用“文档”或其他流 API 的方法。

例子:

客户端正在序列化以下数据:

char * test()
{
    // 1. Parse a JSON string into DOM.
    const char* json = "{\"project\":\"rapidjson\",\"stars\":11}";

    Document d;
    d.Parse(json);

    // 3. Stringify the DOM
    StringBuffer buffer;
    Writer<StringBuffer> writer(buffer);
    d.Accept(writer);

    const char *jsonString = buffer.GetString();
    return jsonString;
}

服务器代码:

static const unsigned char JsonBinary[]={0x7b, 0x22, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,     0x22, 0x3a, 0x22, 0x72, 0x61, 0x70, 0x69, 0x64, 0x6a, 0x73, 0x6f, 0x6e, 0x22, 0x2c, 0x22, 0x73, 0x74, 0x61, 0x72, 0x73, 0x22, 0x3a, 0x31, 0x31, 0x7d};

void deserialize(char * bin)
{
    Document d;
    // how to convert the char * to Document to get back the JSON string?
}

谢谢

4

0 回答 0