mirror of
https://github.com/open-source-parsers/jsoncpp.git
synced 2024-12-27 11:21:02 +08:00
e9ccbe0145
* update example directory * modify some compile error. * update with clang-format * update * update * add_definitions("../include/json") # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # Date: Wed Jul 10 21:26:16 2019 +0800 # # On branch code_example # Your branch is up-to-date with 'origin/code_example'. # # Changes to be committed: # modified: example/CMakeLists.txt # * change CMakeLists.txt * update streamWrite.cpp * update * Update readFromStream.cpp * fix typo
31 lines
727 B
C++
31 lines
727 B
C++
#include "json/json.h"
|
|
#include <fstream>
|
|
#include <iostream>
|
|
/** \brief Parse from stream, collect comments and capture error info.
|
|
* Example Usage:
|
|
* $g++ readFromStream.cpp -ljsoncpp -std=c++11 -o readFromStream
|
|
* $./readFromStream
|
|
* // comment head
|
|
* {
|
|
* // comment before
|
|
* "key" : "value"
|
|
* }
|
|
* // comment after
|
|
* // comment tail
|
|
*/
|
|
int main(int argc, char* argv[]) {
|
|
Json::Value root;
|
|
std::ifstream ifs;
|
|
ifs.open(argv[1]);
|
|
|
|
Json::CharReaderBuilder builder;
|
|
builder["collectComments"] = true;
|
|
JSONCPP_STRING errs;
|
|
if (!parseFromStream(builder, ifs, &root, &errs)) {
|
|
std::cout << errs << std::endl;
|
|
return EXIT_FAILURE;
|
|
}
|
|
std::cout << root << std::endl;
|
|
return EXIT_SUCCESS;
|
|
}
|