Sample code for 30+ languages & platforms
B4X

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 B4X Downloads

B4X
Dim success As Boolean = False

Dim sb As ChilkatStringBuilder
sb.Initialize
Dim bd As ChilkatBinData
bd.Initialize
Dim sbFilename As ChilkatStringBuilder
sbFilename.Initialize
Dim index As Int = 1

success = sb.LoadFile("qa_data/html/oresp body.txt", "utf-8")
'  Assume success.
Log("length = " & sb.Length)

Dim mayHaveMore As Boolean = True
Do While mayHaveMore = True

    '  Get the base64 between the 1st occurrence "data:image/png;base64," and "'"
    Dim sBase64 As String = 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")

        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")
    End If


    index = index + 1
Loop

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

Log("All done.")