如何在 RapidJSON 中将 JSON 写入 cout
RapidJSON 不提供将 JSON 序列化到 cout(= stdout)的直接方法,但你可以使用 OStreamWrapper 来实现:
rapidjson_ostream_example.cpp
#include <rapidjson/writer.h>
#include <rapidjson/ostreamwrapper.h>
// ...
OStreamWrapper out(cout);
Writer<OStreamWrapper> writer(out);
doc.Accept(writer);完整示例:
rapidjson_full_example.cpp
#include <iostream>
#include <rapidjson/document.h>
#include <rapidjson/writer.h>
#include <rapidjson/ostreamwrapper.h>
using namespace rapidjson;
using namespace std;
int main() {
// 生成文档:{"text": "Hello JSON!"}
Document doc;
doc.SetObject(); // 使 doc 成为对象!
doc.AddMember("text", "Hello JSON!", doc.GetAllocator());
// 写入 stdout
OStreamWrapper out(cout);
Writer<OStreamWrapper> writer(out);
doc.Accept(writer);
}Check out similar posts by category:
C/C++
If this post helped you, please consider buying me a coffee or donating via PayPal to support research & publishing of new posts on TechOverflow