(Go) Read/Write JSON with Binary Data such as JPEG Files
Demonstrates how binary files could be stored in JSON in base64 format. Creates JSON containing the contents of a JPG file, and then reads the JSON to extract the JPEG image.
// First load a small JPG file..
bd := chilkat.NewBinData()
success := bd.LoadFile("qa_data/jpg/starfish20.jpg")
// Assume success, but your code should check for success..
// Create JSON containing the binary data in base64 format.
json1 := chilkat.NewJsonObject()
json1.UpdateBd("starfish","base64",bd)
jsonStr := json1.Emit()
fmt.Println(*jsonStr)
// Here's the output:
// {"starfish":"/9j/4AAQSkZJRgA ... cN2iuLFsCEbDGxQkI6RO/n//2Q=="}
// Let's create a new JSON object, load it with the above JSON, and extract the JPG image..
json2 := chilkat.NewJsonObject()
json2.Load(*jsonStr)
// Get the binary bytes.
bd2 := chilkat.NewBinData()
json2.BytesOf("starfish","base64",bd2)
// Save to a file.
success = bd2.WriteFile("qa_output/starfish20.jpg")
fmt.Println("Success.")
bd.DisposeBinData()
json1.DisposeJsonObject()
json2.DisposeJsonObject()
bd2.DisposeBinData()
|