Conversione in Base64
La conversione in Base64 traduce i dati binari di una stringa ASCII (caratteri non accentati) nella rappresentazione di un dato di 6 bit utilizzando 64 caratteri stampabili.
La codifica Base64 è utilizzata quando vi è la necessità di codificare dati binari che devono essere memorizzati e trasferiti su supporti che sono progettati per gestire dati testuali. In particolare, la codifica Base64 è utilizzata negli scambi testuali nella posta elettronica.
Utilizzo delle funzioni specifiche di Gambas
Dalla versione 3.2 di Gambas, per ottenere la codifica di una stringa in Base64 è possibile utilizzare la specifica funzione Base64():
Base64Stringa = Base64("Stringa")
Algoritmo alternativo
E' possibile, ovviamente, ottenere la conversione in Base64 anche con uno specifico algoritmo. Ad esempio uno simile a questo, di cui mostriamo la sua parte essenziale:
Public Sub Button1_Click() Dim s, binario, $fin As String Dim j, bfin As Integer Dim b As Byte ' Riceve l'intera stringa in codifica "binaria" da convertire: s = TextBox1.Text For j = 1 To Len(s) binario = binario & Bin(Asc(Mid(s, j, 1)), 8) Next ' Effettua la conversione: For j = 1 To Len(binario) Step 6 s = Mid(binario, j, 6) bfin = convert(s) Select Case bfin Case 0 To 25 $fin &= Chr(bfin + 65) Case 26 To 51 $fin &= Chr(bfin + 71) Case 52 To 61 $fin &= Chr(bfin - 4) Case 62 $fin &= Chr(bfin + 19) Case 63 $fin &= Chr(bfin + 16) End Select Next ' Mostra il risultato: If Len($fin) < 4 Then Print $fin & String$(4 - Len($fin), "=") If Len($fin) Mod 4 > 0 Then b = 4 * (Fix(Len($fin) / 4) + 1) Print $fin & String$(b - Len($fin), "=") Endif If Len($fin) Mod 4 = 0 Then Print $fin End