golang

How to do the Base64 Encoding and Decoding in Golang?

The Go programming language, also known as Golang, is a statically typed and compiled language. This language was developed by Google back in 2007. Since it is a compiled programming language, the code written in this language is already so close to the one that your processor can easily understand. It means that the programs written in this programming language take very less time to execute. In this guide, we will learn to do the Base64 encoding and decoding in the Go programming language.

Compiler Used for the Go Programming Language

Microsoft’s most commonly used compiler for the Go programming language is the Visual Studio Code. You can easily install it on your Windows or Linux system and use it too. However, we preferred using an online compiler known as the Go Playground. The reason behind choosing an online compiler is that this one is extremely easy to use. All you need to do is type your Golang code within the provided space and then click on the “Run” button to execute it, and you will be able to see the results within a second. Moreover, we have used the Google Chrome browser on a Windows 10 system for accessing this compiler. However, if you are not comfortable using an online compiler, you can easily choose the other one we prescribed above.

The Built-in Base64 Encoding and Decoding Functions of the Go Programming Language

The biggest advantage of performing the Base64 encoding and decoding in the Go programming language is that it consists of built-in functions for doing this, because of which we do not really need to write a lengthy code. The general syntax of the Base64 encoding function of the Go programming language is as follows:

base64.StdEncoding.EncodeToString(str);

Here, “str” represents the string to be encoded in Bytes.

The general syntax of the Base64 decoding function of the Go programming language is given below:

base64.StdEncoding.DecodeString(encodedString);

Here, “encodedString” refers to the string that you want to decode.

You can see how simple the syntax of the Go programming language’s Base64 encoding and decoding functions is. However, you still need to be a bit careful while using the Base64 decoding function of Golang because it might lead to certain errors. Therefore, it is mandatory to apply relevant error checks while using this function of the Go programming language.

Doing the Base64 Encoding and Decoding in the Go Programming Language

For doing the Base64 encoding and decoding, we will be directly using the built-in functions of the Go programming language. However, we really need to understand the syntax of the Go programming language, which is a bit too complex. For that, you need to look at the following code that we have written in the Go programming language for doing the Base64 encoding and decoding.

For this particular code, we have first used the statement “package main” to include the “main” package in our code. This is a special package of the Go programming language that contains the “main()” function. After that, we imported the two required libraries using the “import” keyword, i.e., “encoding/base64” and “fmt.” The “encoding/base64” package will let us use the encoding and decoding functions of the Go programming language, whereas the “fmt” package is needed for using the “Println” command. Then, we have defined the “main()” function by using the “func main()” statement. In this function, we have defined a string that we want to encode using the “str:=” notation. Then, we printed this string on the console.

For encoding this string, we have created another string named “encodedString” and equalized it to the output of our encoding function to which we have passed our string to be encoded. Then, we printed the encoded string on the console. For decoding the encoded string into the original string, we have used the decoding function of the Go programming language and stored its result in the “decodedString” variable.

However, this time, we have also applied an error check because using the decoding function of Golang produces some errors. If there are no errors in the decoded string, it will be printed on the console. In the end, we would like to give you a special recommendation, i.e., you need to be extra careful with the syntax of the Go programming language because even minor mistakes of spaces or brackets can lead to execution errors. Therefore, you need to follow the above-mentioned code as it is.

Result of the Base64 Encoding and Decoding in the Go Programming Language

Now, for executing the Go programming language code that we have written above to see its result, we have used the “Run” button on the code pane. The output of our Go programming language code for the Base64 encoding and decoding is shown in the image below:

You can see in this output that first, our original string got printed on the console, then the encoded string, and finally, the decoded string, which is the same as our original string. This is how you can easily carry out the Base64 encoding and decoding of any of your desired data while using the Go programming language.

Conclusion

We wanted to discuss the Base64 encoding and decoding method in Golang in this article. For that, we first introduced you briefly to the Go programming language. Then, we shared the code that we had written in Golang to perform the Base64 encoding and decoding. After that, we discussed the result of this code with you. You can also encode or decode your desired data in the Go programming language by using the same code. Moreover, you are also free to use any compiler and operating system to execute this code.

About the author

Saeed Raza

Hello geeks! I am here to guide you about your tech-related issues. My expertise revolves around Linux, Databases & Programming. Additionally, I am practicing law in Pakistan. Cheers to all of you.