El lenguaje Go proporciona soporte integrado para la codificación/descodificación base64 y tiene funciones que se pueden usar para realizar operaciones en los datos dados usando el paquete base64. Este paquete proporciona Decodificación de cadenas () función utilizada para decodificar una cadena base64 a su forma de texto sin formato. Admite la decodificación utilizando estándares compatibles con base64 estándar y URL.
Sintaxis:
func (enc *Encoding) DecodeString(s string) ([]byte, error)
Hay 4 variaciones en el tipo de codificación utilizada con el decodificador:
- Codificación estándar: La codificación estándar que se utilizará es la definida por el estándar RFC 4648.
- Codificación RawStd: La codificación estándar que se utilizará es la definida por el estándar RFC 4648, excepto que se omiten los caracteres de relleno.
- Codificación de URL: La codificación de URL a utilizar es la definida por el estándar RFC 4648. Normalmente se utiliza para codificar URL y nombres de archivo.
- Codificación de URL sin procesar:La codificación de URL que se debe usar es la definida por el estándar RFC 4648. Normalmente se usa para codificar URL y nombres de archivo, excepto que se omiten los caracteres de relleno.
Valor de retorno: Devuelve los bytes representados por la cadena base64 dada.
Los programas a continuación muestran el Decodificación de cadenas () función:
Ejemplo 1:
// Golang program to illustrate // the base64.DecodeString() Function package main import ( "encoding/base64" "fmt" ) func main() { // taking a string givenString := "R2Vla3Nmb3JHZWVrcw==" // using the function decodedString, err := base64.StdEncoding.DecodeString(givenString) if err != nil { fmt.Println( "Error Found:" , err) return } fmt.Print( "Decoded Bytes: " ) fmt.Println(decodedString) fmt.Print( "Decoded String: " ) fmt.Println(string(decodedString)) } |
Producción:
Decoded Bytes: [71 101 101 107 115 102 111 114 71 101 101 107 115] Decoded String: GeeksforGeeks
Ejemplo 2:
// Golang program to illustrate // the base64.DecodeString() Function package main import ( "encoding/base64" "fmt" ) func main() { // taking a string givenString := "aHR0cHM6Ly93d3cuZ2Vla3Nmb3JnZWVrcy5vcmcv" // using the function decodedString, err := base64.URLEncoding.DecodeString(givenString) if err != nil { fmt.Println( "Error Found:" , err) return } fmt.Print( "Decoded Bytes: " ) fmt.Println(decodedString) fmt.Print( "Decoded String: " ) fmt.Println(string(decodedString)) } |
Producción:
Medidas de decodificación: [104 116 116 112 115 58 47 47 119 119 119 46 103 101 101 107 115 102 111 114 103 101 101 107 115 46 111 114 103 47]
Cadena de decodificación: https://www.geeksforgeeks.org/