Jsoncpp FastWriter正确修剪

时间:2017-03-11 10:38:50

标签: c++ jsoncpp

Jsoncpp FastWriter方法为什么最后一行追加空白?这是一个方法Json :: StreamWriterBuilder和缩进字段。我该如何使用这种方法?没有线。

修正了请回答。

不喜欢代码:

Json::Value root;
root["name"] = "Arda";

Json::FastWriter out;
std::cout << "'" << out.write(root) << "'" << std::endl;

// Result:
'{"name": "Arda"}
'

2 个答案:

答案 0 :(得分:3)

我现在使用StreamWriterBuilder方法获得了不错的结果!

Json::StreamWriterBuilder wbuilder;
wbuilder["indentation"] = "";
std::cout << "'" << Json::writeString(wbuilder, root) << "'" << std::endl;

答案 1 :(得分:0)

FastWriter 为每个结果附加一个额外的换行符。这真的很烦人。

虽然 FastWriter 现在已被弃用(应替换为 StreamWriterBuilder),但您可以使用 omitEndingLineFeed()

省略此结束行
Json::FastWriter writer;
writer.omitEndingLineFeed();
return writer.write(root);