You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
xlt-evil 339c93e477 first commit 4 months ago
..
.github/ISSUE_TEMPLATE first commit 4 months ago
.travis_scripts first commit 4 months ago
cmake first commit 4 months ago
devtools first commit 4 months ago
doc first commit 4 months ago
example first commit 4 months ago
include first commit 4 months ago
pkg-config first commit 4 months ago
src first commit 4 months ago
test first commit 4 months ago
.clang-format first commit 4 months ago
.clang-tidy first commit 4 months ago
.gitattributes first commit 4 months ago
.gitignore first commit 4 months ago
.travis.yml first commit 4 months ago
AUTHORS first commit 4 months ago
BUILD.bazel first commit 4 months ago
CMakeLists.txt first commit 4 months ago
CONTRIBUTING.md first commit 4 months ago
CTestConfig.cmake first commit 4 months ago
LICENSE first commit 4 months ago
README.md first commit 4 months ago
amalgamate.py first commit 4 months ago
appveyor.yml first commit 4 months ago
dev.makefile first commit 4 months ago
doxybuild.py first commit 4 months ago
get_version.pl first commit 4 months ago
jsoncpp-namespaced-targets.cmake first commit 4 months ago
jsoncppConfig.cmake.in first commit 4 months ago
meson.build first commit 4 months ago
meson_options.txt first commit 4 months ago
reformat.sh first commit 4 months ago
version.in first commit 4 months ago

README.md

JsonCpp

badge badge badge Coverage Status

JSON is a lightweight data-interchange format. It can represent numbers, strings, ordered sequences of values, and collections of name/value pairs.

JsonCpp is a C++ library that allows manipulating JSON values, including serialization and deserialization to and from strings. It can also preserve existing comment in unserialization/serialization steps, making it a convenient format to store user input files.

Documentation

JsonCpp documentation is generated using Doxygen.

A note on backward-compatibility

  • 1.y.z is built with C++11.
  • 0.y.z can be used with older compilers.
  • 00.11.z can be used both in old and new compilers.
  • Major versions maintain binary-compatibility.

Special note

The branch 00.11.zis a new branch, its major version number 00 is to show that it is different from 0.y.z and 1.y.z, the main purpose of this branch is to make a balance between the other two branches. Thus, users can use some new features in this new branch that introduced in 1.y.z, but can hardly applied into 0.y.z.

Using JsonCpp in your project

The vcpkg dependency manager

You can download and install JsonCpp using the vcpkg dependency manager:

git clone https://github.com/Microsoft/vcpkg.git
cd vcpkg
./bootstrap-vcpkg.sh
./vcpkg integrate install
./vcpkg install jsoncpp

The JsonCpp port in vcpkg is kept up to date by Microsoft team members and community contributors. If the version is out of date, please create an issue or pull request on the vcpkg repository.

Amalgamated source

https://github.com/open-source-parsers/jsoncpp/wiki/Amalgamated-(Possibly-outdated)

The Meson Build System

If you are using the Meson Build System, then you can get a wrap file by downloading it from Meson WrapDB, or simply use meson wrap install jsoncpp.

Other ways

If you have trouble, see the Wiki, or post a question as an Issue.

License

See the LICENSE file for details. In summary, JsonCpp is licensed under the MIT license, or public domain if desired and recognized in your jurisdiction.