en	https://www.boost.org/doc/libs/release/libs/json/[image:https://raw.githubusercontent.com/CPPAlliance/json/master/doc/images/repo-logo-3.png[Boost.JSON]]

en	Branch
zh-hans	分支

en	https://github.com/boostorg/json/tree/master[`master`]

en	https://github.com/boostorg/json/tree/develop[`develop`]

en	https://azure.microsoft.com/en-us/services/devops/pipelines/[Azure]

en	https://vinniefalco.visualstudio.com/json/_build/latest?definitionId=5&branchName=master[image:https://img.shields.io/azure-devops/build/vinniefalco/2571d415-8cc8-4120-a762-c03a8eda0659/8/master[Build
zh-hans	https://vinniefalco.visualstudio.com/json/_build/latest?definitionId=5&amp;branchName=master[image:https://img.shields.io/azure-devops/build/vinniefalco/2571d415-8cc8-4120-a762-c03a8eda0659/8/master[构建

en	Status]] |https://vinniefalco.visualstudio.com/json/_build/latest?definitionId=8&branchName=develop[image:https://img.shields.io/azure-devops/build/vinniefalco/2571d415-8cc8-4120-a762-c03a8eda0659/8/develop[Build Status]]
zh-hans	状态]] |https://vinniefalco.visualstudio.com/json/_build/latest?definitionId=8&amp;branchName=develop[image:https://img.shields.io/azure-devops/build/vinniefalco/2571d415-8cc8-4120-a762-c03a8eda0659/8/develop[Build Status]]

en	Docs
zh-hans	文档

en	https://www.boost.org/doc/libs/master/libs/json/[image:https://img.shields.io/badge/docs-master-brightgreen.svg[Documentation]]
zh-hans	https://www.boost.org/doc/libs/master/libs/json/[image:https://img.shields.io/badge/docs-master-brightgreen.svg[文档]]

en	https://www.boost.org/doc/libs/develop/libs/json/[image:https://img.shields.io/badge/docs-develop-brightgreen.svg[Documentation]]
zh-hans	https://www.boost.org/doc/libs/develop/libs/json/[image:https://img.shields.io/badge/docs-develop-brightgreen.svg[文档]]

en	https://drone.io/[Drone]

en	https://drone.cpp.al/boostorg/json[image:https://drone.cpp.al/api/badges/boostorg/json/status.svg?ref=refs/heads/master[Build
zh-hans	https://drone.cpp.al/boostorg/json[image:https://drone.cpp.al/api/badges/boostorg/json/status.svg?ref=refs/heads/master[构建

en	Status]] |https://drone.cpp.al/boostorg/json[image:https://drone.cpp.al/api/badges/boostorg/json/status.svg?ref=refs/heads/develop[Build Status]]
zh-hans	状态]] |https://drone.cpp.al/boostorg/json[image:https://drone.cpp.al/api/badges/boostorg/json/status.svg?ref=refs/heads/develop[构建状态]]

en	Matrix

en	http://www.boost.org/development/tests/master/developer/json.html[image:https://img.shields.io/badge/matrix-master-brightgreen.svg[Matrix]]
zh-hans	http://www.boost.org/development/tests/master/developer/json.html[image:https://img.shields.io/badge/matrix-master-brightgreen.svg[测试矩阵]]

en	http://www.boost.org/development/tests/develop/developer/json.html[image:https://img.shields.io/badge/matrix-develop-brightgreen.svg[Matrix]]
zh-hans	http://www.boost.org/development/tests/develop/developer/json.html[image:https://img.shields.io/badge/matrix-develop-brightgreen.svg[测试矩阵]]

en	Fuzzing
zh-hans	模糊测试

en	—

en	https://github.com/boostorg/json/actions?query=workflow%3Afuzz+branch%3Adevelop[image:https://github.com/boostorg/json/workflows/fuzz/badge.svg?branch=develop[fuzz]]
zh-hans	https://github.com/boostorg/json/actions?query=workflow%3Afuzz+branch%3Adevelop[image:https://github.com/boostorg/json/workflows/fuzz/badge.svg?branch=develop[模糊测试]]

en	https://ci.appveyor.com/[Appveyor]

en	https://ci.appveyor.com/project/vinniefalco/cppalliance-json/branch/master[image:https://ci.appveyor.com/api/projects/status/8csswcnmfm798203?branch=master&svg=true[Build
zh-hans	https://ci.appveyor.com/project/vinniefalco/cppalliance-json/branch/master[image:https://ci.appveyor.com/api/projects/status/8csswcnmfm798203?branch=master&amp;svg=true[状态

en	status]] |https://ci.appveyor.com/project/vinniefalco/cppalliance-json/branch/develop[image:https://ci.appveyor.com/api/projects/status/8csswcnmfm798203?branch=develop&svg=true[Build status]]
zh-hans	状态]] |https://ci.appveyor.com/project/vinniefalco/cppalliance-json/branch/develop[image:https://ci.appveyor.com/api/projects/status/8csswcnmfm798203?branch=develop&amp;svg=true[构建状态]]

en	https://codecov.io[codecov.io]

en	https://codecov.io/gh/boostorg/json/branch/master[image:https://codecov.io/gh/boostorg/json/branch/master/graph/badge.svg[codecov]]

en	https://codecov.io/gh/boostorg/json/branch/develop[image:https://codecov.io/gh/boostorg/json/branch/develop/graph/badge.svg[codecov]]

en	Boost.JSON

en	Overview
zh-hans	概述

en	Boost.JSON is a portable C++ library which provides containers and algorithms that implement https://json.org/[JavaScript Object Notation], or simply ``JSON'', a lightweight data-interchange format. This format is easy for humans to read and write, and easy for machines to parse and generate. It is based on a subset of the JavaScript Programming Language (https://www.ecma-international.org/ecma-262/10.0/index.html[Standard ECMA-262]), and is currently standardised in https://datatracker.ietf.org/doc/html/rfc8259[RFC 8259]. JSON is a text format that is language-independent but uses conventions that are familiar to programmers of the C-family of languages, including C, C++, C#, Java, JavaScript, Perl, Python, and many others. These properties make JSON an ideal data-interchange language.
zh-hans	Boost.JSON 是一个可移植的 C++ 库，提供了实现 [JavaScript Object Notation](https://json.org/)（简称 “JSON”）的容器和算法，这是一种轻量级的数据交换格式。该格式易于人类读写，也易于机器解析和生成。该格式基于 JavaScript 编程语言的一个子集（[ECMA-262 标准](https://www.ecma-international.org/ecma-262/10.0/index.html)），目前已在 [RFC 8259](https://datatracker.ietf.org/doc/html/rfc8259) 中标准化。JSON 是一种独立于语言但使用 C 语言家族（包括 C、C++、C#、Java、JavaScript、Perl、Python 等）程序员熟悉的约定的文本格式。这些特性使 JSON 成为理想的数据交换语言。

en	This library focuses on a common and popular use-case: parsing and serializing to and from a container called `value` which holds JSON types. Any `value` which you build can be serialized and then deserialized, guaranteeing that the result will be equal to the original value. Whatever JSON output you produce with this library will be readable by most common JSON implementations in any language.
zh-hans	该库专注于一个常见且广泛使用的场景：解析和序列化到一个名为 `value` 的容器，或从中进行解析和序列化（该容器用于存储 JSON 类型）。任何构建的 `value` 都可以被序列化后再反序列化，并保证结果与原始值相等。使用该库生成的任何 JSON 输出，均可被大多数主流编程语言中的常见 JSON 实现正确读取。

en	The `value` container is designed to be well suited as a vocabulary type appropriate for use in public interfaces and libraries, allowing them to be composed. The library restricts the representable data types to the ranges which are almost universally accepted by most JSON implementations, especially JavaScript. The parser and serializer are both highly performant, meeting or exceeding the benchmark performance of the best comparable libraries. Allocators are very well supported. Code which uses these types will be easy to understand, flexible, and performant.
zh-hans	`value` 容器被设计为一种适合作为公共接口和库中词汇类型的组件，便于组合使用。该库将可表示的数据类型限制在绝大多数 JSON 实现（尤其是 JavaScript）普遍接受的范围内。解析器和序列化器均具备高性能，其基准性能达到或超过了同类优秀库的水平。对分配器的支持非常完善。使用这些类型的代码将易于理解、灵活且高效。

en	Boost.JSON offers these features:
zh-hans	Boost.JSON 提供以下特性：

en	Fast compilation
zh-hans	快速编译

en	Require only C++11
zh-hans	仅需 C++11

en	Fast streaming parser and serializer
zh-hans	高性能流式解析器和序列化器

en	Constant-time key lookup for objects
zh-hans	对象的常量时间键查找

en	Options to allow non-standard JSON
zh-hans	允许非标准 JSON 的选项

en	Easy and safe modern API with allocator support
zh-hans	提供易于使用且安全的现代 API，并支持分配器

en	Optional header-only, without linking to a library
zh-hans	可选的纯头文件方式，无需链接库

en	Visit https://boost.org/libs/json for complete documentation.
zh-hans	若要获取完整文档请访问以下链接： https://boost.org/libs/json

en	Requirements
zh-hans	要求

en	Requires only C++11
zh-hans	仅需 C++11

en	Link to a built static or dynamic Boost library, or use header-only
zh-hans	可链接预构建的静态或动态 Boost 库，也可使用纯头文件方式

en	(see below)
zh-hans	（见下文）

en	Supports -fno-exceptions, detected automatically
zh-hans	Supports -fno-exceptions（可自动检测）

en	The library relies heavily on these well known C++ types in its interfaces (henceforth termed _standard types_):
zh-hans	该库在其接口中大量依赖以下众所周知的 C++ 类型（以下称为 _standard types_）：

en	`string_view`

en	`memory_resource`, `polymorphic_allocator`

en	`error_category`, `error_code`, `error_condition`, `system_error`

en	Header-Only
zh-hans	纯头文件

en	To use as header-only; that is, to eliminate the requirement to link a program to a static or dynamic Boost.JSON library, simply place the following line in exactly one new or existing source file in your project.
zh-hans	要使用纯头文件模式（即无需将程序链接到静态或动态的 Boost.JSON 库），只需在项目中恰好一个新建或现有源文件中添加以下行。

en	MSVC users must also define the macro `BOOST_JSON_NO_LIB` to disable auto-linking.
zh-hans	MSVC 用户还必须定义宏 `BOOST_JSON_NO_LIB` ，以禁用自动链接。

en	Embedded
zh-hans	嵌入式

en	Boost.JSON works great on embedded devices. The library uses local stack buffers to increase the performance of some operations. On Intel platforms these buffers are large (4KB), while on non-Intel platforms they are small (256 bytes). To adjust the size of the stack buffers for embedded applications define this macro when building the library or including the function definitions:
zh-hans	Boost.JSON 在嵌入式设备上表现优异。该库使用局部栈缓冲区来提升某些操作的性能。在 Intel 平台上，这些缓冲区较大（4KB），而在非 Intel 平台上则较小（256 字节）。若要在嵌入式应用中调整栈缓冲区的大小，请在构建库或包含函数定义时定义以下宏：

en	Supported Compilers
zh-hans	支持的编译器

en	Boost.JSON has been tested with the following compilers:
zh-hans	Boost.JSON 已在以下编译器上进行过测试：

en	clang: 3.5, 3.6, 3.7, 3.8, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14

en	gcc: 4.8, 4.9, 5, 6, 7, 8, 9, 10, 11, 12

en	msvc: 14.0, 14.1, 14.2, 14.3

en	Supported JSON Text
zh-hans	支持的 JSON 文本

en	The library expects input text to be encoded using UTF-8, which is a requirement put on all JSON exchanged between systems by the https://datatracker.ietf.org/doc/html/rfc8259#section-8.1[RFC]. Similarly, the text generated by the library is valid UTF-8.
zh-hans	该库要求输入文本使用 UTF-8 编码，这是 [RFC](https://datatracker.ietf.org/doc/html/rfc8259#section-8.1) 对系统间交换的所有 JSON 所规定的强制要求。同样，该库生成的文本也是有效的 UTF-8。

en	The RFC does not allow byte order marks (BOM) to appear in JSON text, so the library considers BOM syntax errors.
zh-hans	RFC 不允许字节顺序标记（BOM）出现在 JSON 文本中，因此该库将 BOM 视为语法错误。

en	The library supports several popular JSON extensions. These have to be explicitly enabled.
zh-hans	该库支持多种流行的 JSON 扩展，但这些扩展必须显式启用。

en	Visual Studio Solution
zh-hans	Visual Studio 解决方案

en	Quality Assurance
zh-hans	质量保证

en	The development infrastructure for the library includes these per-commit analyses:
zh-hans	该库的开发基础设施包括以下每次提交的分析：

en	Coverage reports
zh-hans	覆盖率报告

en	Benchmark performance comparisons
zh-hans	基准性能比较

en	Compilation and tests on Drone.io, Azure Pipelines, Appveyor
zh-hans	在 Drone.io、Azure Pipelines 和 AppVeyor 上进行编译与测试

en	Fuzzing using clang-llvm and machine learning
zh-hans	使用 clang-llvm 和机器学习的模糊测试

en	License
zh-hans	许可证

en	Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at https://www.boost.org/LICENSE_1_0.txt)
zh-hans	根据 Boost 软件许可协议 1.0 版分发。（详见随附文件 LICENSE_1_0.txt 文件或访问 https://www.boost.org/LICENSE_1_0.txt ）