API网址:https://nlohmann.github.io/json/index.html
源码网址:https://github.com/nlohmann/json
这些页面包含JSON for Modern C ++的API文档,这是一个C ++ 11仅限标头的JSON类。
内容
- 类
basic_json
- JSON值的类模板json
- 默认的特化basic_json
,定义为basic_json<>
- 功能
- 物体检查
- dump - 值序列化
- type - 值的类型
- is_primitive,is_structured,is_null,is_boolean,is_number,is_number_integer,is_number_unsigned,is_number_float,is_object,is_array,is_string,is_discarded - 检查值类型
- operator value_t - 值的类型(隐式转换)
- 价值访问
- 让 -得到的值
- get_ptr - 获取值指针
- get_ref - 获取值引用
- operator ValueType - 获取值(隐式转换)
- value - 从对象获取值,如果key不存在则返回默认值
- 例外
- parse_error表示解析错误的异常
- invalid_iterator表示异常指示迭代器错误的异常
- type_error表示执行具有错误类型的成员函数的异常
- out_of_range表示访问超出定义范围的异常
- other_error表示其他库错误的异常
- 词典比较运算符
- 系列化
- dump serialize to string
- operator <<序列化为流
- 反序列化/解析
- 从输入(字符串,文件等)解析解析并返回JSON值
- sax_parse从输入(字符串,文件等)解析并生成SAX事件
- operator >>从流中解析
- 接受检查语法错误而不解析
- SAX接口定义用户定义的SAX事件使用者
- callback接口向parse函数注册一个回调
- 二进制格式:
- CBOR:from_cbor / to_cbor
- MessagePack:from_msgpack / to_msgpack
- UBJSON:from_ubjson / to_ubjson
- BSON:from_bson / to_bson
- 物体检查
- 类型
- 进一步的JSON标准
- JSON指针(REF 6901)
- JSON补丁(RFC 6902)
- JSON Merge补丁(RFC 7396)
容器功能概述
从STL已知的容器函数已经扩展为支持JSON中的不同值类型。但是,并非所有函数都可以应用于所有值类型。请注意,某些功能的签名在类型之间有所不同; 例如,at
可以使用字符串来调用对象中的键或使用整数来寻址数组中的值。
请注意,此表仅列出由于类型而引发的异常。例如,当调用字符串类型时,该at
函数将始终抛出json::type_error
异常。当调用数组时,如果传递的索引无效,它可能会抛出json::out_of_range
异常。
- 版权
- 版权所有©2013-2019 Niels Lohmann。该代码根据MIT许可证授权。