Sample code for 30+ languages & platforms
Xojo Plugin

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 Xojo Plugin Downloads

Xojo Plugin
Dim success As Boolean
success = False

Dim sb As New Chilkat.StringBuilder
Dim bd As New Chilkat.BinData
Dim sbFilename As New Chilkat.StringBuilder
Dim index As Int32
index = 1

success = sb.LoadFile("qa_data/html/oresp body.txt","utf-8")
// Assume success.
System.DebugLog("length = " + Str(sb.Length))

Dim mayHaveMore As Boolean
mayHaveMore = True
While mayHaveMore = True

    // Get the base64 between the 1st occurrence "data:image/png;base64," and "'"
    Dim sBase64 As String
    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) Then
        // Found something.
        // Load into bd and save.
        success = bd.LoadEncoded(sBase64,"base64")

        success = sbFilename.SetString("qa_output/png_")
        success = sbFilename.AppendInt(index)
        success = sbFilename.Append(".png")

        success = bd.WriteFile(sbFilename.GetAsString())

        // Replace "data:image/png;base64" with "data:image-png;base64" so the next iteration finds the next occurrence.
        success = sb.ReplaceFirst("data:image/png;base64","data:image-png;base64")
    End If

    index = index + 1
Wend

// Restore our replacements..
Dim count As Int32
count = sb.Replace("data:image-png;base64","data:image/png;base64")

System.DebugLog("All done.")