|
template<template< typename U, typename V, typename...Args > class ObjectType = std::map, template< typename U, typename...Args > class ArrayType = std::vector, class StringType = std::string, class BooleanType = bool, class NumberIntegerType = int64_t, class NumberFloatType = double, template< typename U > class AllocatorType = std::allocator>
std::ostream& operator<< |
( |
std::ostream & |
o, |
|
|
const basic_json & |
j |
|
) |
| |
|
friend |
Serialize the given JSON value j to the output stream o. The JSON value will be serialized using the dump member function. The indentation of the output can be controlled with the member variable width of the output stream o. For instance, using the manipulator std::setw(4) on o sets the indentation level to 4 and the serialization result is the same as calling dump(4) .
- Parameters
-
[in,out] | o | stream to serialize to |
[in] | j | JSON value to serialize |
- Returns
- the stream o
- Complexity
- Linear.
- Example
- The example below shows the serialization with different parameters to
width to adjust the indentation level.
8 json j_object = {{ "one", 1}, { "two", 2}};
9 json j_array = {1, 2, 4, 8, 16};
12 std::cout << j_object << "\n\n";
13 std::cout << j_array << "\n\n";
16 std::cout << std::setw(4) << j_object << "\n\n";
17 std::cout << std::setw(2) << j_array << "\n\n";
a class to store JSON values Definition: json.hpp:121
namespace for Niels Lohmann Definition: json.hpp:56
Output: {"one":1,"two":2}
[1,2,4,8,16]
{
"one": 1,
"two": 2
}
[
1,
2,
4,
8,
16
]
The example code above can be translated withg++ -std=c++11 -Isrc doc/examples/operator_serialize.cpp -o operator_serialize .
|