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"
5 #include "rapidjson/prettywriter.h"
6 #include "rapidjson/filereadstream.h"
7 #include "rapidjson/filewritestream.h"
8 #include "rapidjson/error/en.h"
9
10 using namespace rapidjson;
11
main(int,char * [])12 int 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));
21 PrettyWriter<FileWriteStream> writer(os);
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", (unsigned)reader.GetErrorOffset(), GetParseError_En(reader.GetParseErrorCode()));
26 return 1;
27 }
28
29 return 0;
30 }
31