如何将RapidJSON文档序列化为字符串?

人气:554 发布:2022-10-16 标签: string c++ document rapidjson

问题描述

如何将RapidJSON文档序列化为字符串? 在所有示例中,序列化文本都通过FileStream重定向到标准输出,但我需要将其重定向到一个字符串变量。

推荐答案

如下:

const char *GetJsonText()
{
  rapidjson::StringBuffer buffer;

  buffer.Clear();

  rapidjson::Writer<rapidjson::StringBuffer> writer(buffer);
  doc.Accept(writer);

  return strdup( buffer.GetString() );
}

当然,您必须在返回时调用Free(),或者:

return string( buffer.GetString() );

改为。

117