pretty.cpp 988 Bytes
Newer Older
1
// JSON pretty formatting example
2
// This example can only handle UTF-8. For handling other encodings, see prettyauto example.
3 4 5

#include "rapidjson/reader.h"
#include "rapidjson/prettywriter.h"
6 7
#include "rapidjson/filereadstream.h"
#include "rapidjson/filewritestream.h"
8
#include "rapidjson/error/en.h"
9 10 11

using namespace rapidjson;

12
int main(int, char*[]) {
13 14
	// Prepare reader and input stream.
	Reader reader;
15 16
	char readBuffer[65536];
	FileReadStream is(stdin, readBuffer, sizeof(readBuffer));
17 18

	// Prepare writer and output stream.
19 20 21
	char writeBuffer[65536];
	FileWriteStream os(stdout, writeBuffer, sizeof(writeBuffer));
	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 27 28 29 30
		return 1;
	}

	return 0;
}