Generate a Word Document
Updated: May 25, 2022
For this example you are going to learn how to use DataPipeline's SimpleJsonReader to read JSON data and write the contents to a word document.
This example can easily be modified to show how to write to a JSON stream.
JSON input
[ { "stageName":"John Wayne", "realName":"Marion Robert Morrison", "gender":"male", "city":"Winterset","balance":156.35 }, { "stageName":"Spiderman", "realName":"Peter Parker", "gender":"male", "city":"New York", "balance":-0.96 } ]
Java Code listing
package com.northconcepts.datapipeline.examples.cookbook; import java.io.File; import com.northconcepts.datapipeline.core.DataReader; import com.northconcepts.datapipeline.core.DataWriter; import com.northconcepts.datapipeline.job.Job; import com.northconcepts.datapipeline.json.SimpleJsonReader; import com.northconcepts.datapipeline.rtf.RtfWriter; public class GenerateAWordDoc { public static void main(String[] args) { DataReader reader = new SimpleJsonReader( new File("example/data/input/simple-json-input.json")); DataWriter writer = new RtfWriter( new File("example/data/output/simple-json-output.doc")); Job.run(reader, writer); } }
Code walkthrough
- The SimpleJsonReader is created corresponding to the input file i.e.
simple-json-input.json
. - A RtfWriter is also created corresponding to the output file i.e.
simple-json-output.doc
. - RtfWriter extends BinaryWriter and writes records to an RTF document stream. It is used for generating documents in Rich Text Format.
- Data is transferred from the SimpleJsonReader to RtfWriter via Job.run() method.
Output
The output will be written to the .doc file and stored in the specified location i.e example/data/output
.