mirror of
https://github.com/open-source-parsers/jsoncpp.git
synced 2025-04-21 08:18:57 +02:00

Rewerite and revert some code that this library can be built in pre-C++11 and C++11 env. Main Change List: 1. using -> typedef 2. not using auto & decltype 3. not using raw string literals 4. ..., other c++11 features will be chosen to compile, depending on env.
32 lines
746 B
C++
32 lines
746 B
C++
#include "json/json.h"
|
|
#include <cstdlib>
|
|
#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;
|
|
}
|