Wire Sysio Wire Sysion 1.0.0
Loading...
Searching...
No Matches
pretty.cpp
Go to the documentation of this file.
1// JSON pretty formatting example
2// This example can only handle UTF-8. For handling other encodings, see prettyauto example.
3
4#include "rapidjson/reader.h"
9
10using namespace rapidjson;
11
12int main(int, char*[]) {
13 // Prepare reader and input stream.
14 Reader reader;
15 char readBuffer[65536];
16 FileReadStream is(stdin, readBuffer, sizeof(readBuffer));
17
18 // Prepare writer and output stream.
19 char writeBuffer[65536];
20 FileWriteStream os(stdout, writeBuffer, sizeof(writeBuffer));
22
23 // JSON reader parse from the input stream and let writer generate the output.
24 if (!reader.Parse<kParseValidateEncodingFlag>(is, writer)) {
25 fprintf(stderr, "\nError(%u): %s\n", static_cast<unsigned>(reader.GetErrorOffset()), GetParseError_En(reader.GetParseErrorCode()));
26 return 1;
27 }
28
29 return 0;
30}
File byte stream for input using fread().
Wrapper of C file stream for output using fwrite().
ParseResult Parse(InputStream &is, Handler &handler)
Parse JSON text.
Definition reader.h:557
ParseErrorCode GetParseErrorCode() const
Get the ParseErrorCode of last parsing.
Definition reader.h:683
size_t GetErrorOffset() const
Get the position of last parsing error in input, 0 otherwise.
Definition reader.h:686
Writer with indentation and spacing.
os_t os
RAPIDJSON_NAMESPACE_BEGIN const RAPIDJSON_ERROR_CHARTYPE * GetParseError_En(ParseErrorCode parseErrorCode)
Maps error code of parsing into error message.
Definition en.h:36
main RapidJSON namespace
@ kParseValidateEncodingFlag
Validate encoding of JSON strings.
Definition reader.h:148