mirror of
https://github.com/nlohmann/json.git
synced 2026-10-22 05:58:12 +00:00
27 lines
855 B
C++
27 lines
855 B
C++
#include <iostream>
|
|
#include <iomanip>
|
|
#include <nlohmann/json_view.hpp>
|
|
|
|
using json_document = nlohmann::json_document;
|
|
using json_view = nlohmann::json_view;
|
|
|
|
int main()
|
|
{
|
|
// one order out of a large incoming batch -- write it straight to a log
|
|
// stream without ever building a basic_json value for it, or for the
|
|
// rest of the batch
|
|
const json_document doc = json_document::parse(R"(
|
|
[{"id": 1, "item": "cable"}, {"id": 2, "item": "adapter"}]
|
|
)");
|
|
const json_view orders = doc.root();
|
|
|
|
// compact, for a one-line log entry
|
|
std::cout << orders[1] << '\n';
|
|
|
|
// std::setw sets the indentation level, exactly as for basic_json
|
|
std::cout << std::setw(2) << orders[1] << "\n\n";
|
|
|
|
// std::setfill changes the indentation character
|
|
std::cout << std::setw(1) << std::setfill('\t') << orders[1] << '\n';
|
|
}
|