Go
Go
Extract data:image/png;base64 from HTML
See more Base64 Examples
Demonstrates how to extract base64 image data from HTMl and save to files.Chilkat Go Downloads
success := false
sb := chilkat.NewStringBuilder()
bd := chilkat.NewBinData()
sbFilename := chilkat.NewStringBuilder()
index := 1
success = sb.LoadFile("qa_data/html/oresp body.txt","utf-8")
// Assume success.
fmt.Println("length = ", sb.Length())
mayHaveMore := true
for mayHaveMore == true {
// Get the base64 between the 1st occurrence "data:image/png;base64," and "'"
sBase64 := sb.GetBetween("data:image/png;base64,","'")
// If nothing is found, then we'll exit the loop because there are no more.
mayHaveMore = sb.LastMethodSuccess()
if sb.LastMethodSuccess() == true {
// Found something.
// Load into bd and save.
success = bd.LoadEncoded(*sBase64,"base64")
sbFilename.SetString("qa_output/png_")
sbFilename.AppendInt(index)
sbFilename.Append(".png")
bd.WriteFile(*sbFilename.GetAsString())
// Replace "data:image/png;base64" with "data:image-png;base64" so the next iteration finds the next occurrence.
sb.ReplaceFirst("data:image/png;base64","data:image-png;base64")
}
index = index + 1
}
// Restore our replacements..
count := sb.Replace("data:image-png;base64","data:image/png;base64")
fmt.Println("All done.")
sb.DisposeStringBuilder()
bd.DisposeBinData()
sbFilename.DisposeStringBuilder()