diff options
author | Jay Berkenbilt <ejb@ql.org> | 2022-01-18 00:40:38 +0100 |
---|---|---|
committer | Jay Berkenbilt <ejb@ql.org> | 2022-01-30 19:11:03 +0100 |
commit | e8e8f6f43c760523520dfe7a5c76d88c959599f6 (patch) | |
tree | a000bcb5cbbde3e2833a57a28e761449b62165b2 /libtests/json_parse.cc | |
parent | b9af421ef788b94fcbf18ecf702cec3ba9a018b7 (diff) | |
download | qpdf-e8e8f6f43c760523520dfe7a5c76d88c959599f6.tar.zst |
Add JSON::parse
Diffstat (limited to 'libtests/json_parse.cc')
-rw-r--r-- | libtests/json_parse.cc | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/libtests/json_parse.cc b/libtests/json_parse.cc new file mode 100644 index 00000000..f0491723 --- /dev/null +++ b/libtests/json_parse.cc @@ -0,0 +1,27 @@ +#include <qpdf/JSON.hh> +#include <qpdf/QUtil.hh> +#include <iostream> + +int main(int argc, char* argv[]) +{ + if (argc != 2) + { + std::cerr << "Usage: json_parse file" << std::endl; + return 2; + } + char const* filename = argv[1]; + try + { + PointerHolder<char> buf; + size_t size; + QUtil::read_file_into_memory(filename, buf, size); + std::string s(buf.getPointer(), size); + std::cout << JSON::parse(s).unparse() << std::endl; + } + catch (std::exception& e) + { + std::cerr << "exception: " << filename<< ": " << e.what() << std::endl; + return 2; + } + return 0; +} |