Skip to content

to_string(basic_json)

template <typename BasicJsonType> std::string to_string(const BasicJsonType& j); 

This function implements a user-defined to_string for JSON objects.

Template parameters

BasicJsonType
a specialization of basic_json

Return value

string containing the serialization of the JSON value

Exception safety

Strong guarantee: if an exception is thrown, there are no changes to any JSON value.

Exceptions

Throws type_error.316 if a string stored inside the JSON value is not UTF-8 encoded

Complexity

Linear.

Possible implementation

template <typename BasicJsonType> std::string to_string(const BasicJsonType& j) {  return j.dump(); } 

Examples

Example

The following code shows how the library's to_string() function integrates with others, allowing argument-dependent lookup.

#include <iostream> #include <nlohmann/json.hpp> using json = nlohmann::json; using std::to_string; int main() {  // create values  json j = {{"one", 1}, {"two", 2}};  int i = 42;  // use ADL to select best to_string function  auto j_str = to_string(j); // calling nlohmann::to_string  auto i_str = to_string(i); // calling std::to_string  // serialize without indentation  std::cout << j_str << "\n\n"  << i_str << std::endl; } 

Output:

{"one":1,"two":2} 42 

See also

Version history

Added in version 3.7.0.