|
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 = std::int64_t, class NumberUnsignedType = std::uint64_t, class NumberFloatType = double, template< typename U > class AllocatorType = std::allocator, template< typename T, typename SFINAE=void > class JSONSerializer = adl_serializer>
std::ostream& operator>> |
( |
const basic_json & |
j, |
|
|
std::ostream & |
o |
|
) |
| |
|
friend |
serialize to stream 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"; basic_json<> json default JSON class
Output (play with this example online): {"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
- Since
- version 1.0.0
Definition at line 6241 of file json.hpp.
|