Golang : Convert slice to array
For new comer to Golang, slice and array can be confusing sometimes. In a nutshell, a slice length(size) is flexible and array length(size) is not. Since they are different, many assume that by using the =
operator, a new array will be populated with the elements from a slice.
To convert a slice to array properly, use the builtin copy()
function.
For example :
package main
import "fmt"
func main() {
slice := []byte("abcd1234")
var arr [8]byte
copy(arr[:], slice[:8])
fmt.Println(arr)
fmt.Println(string(arr[:])) // []byte to string
}
Sample output :
[97 98 99 100 49 50 51 52]
abcd1234
See also : Golang : Convert string to array/slice
By Adam Ng
IF you gain some knowledge or the information here solved your programming problem. Please consider donating to the less fortunate or some charities that you like. Apart from donation, planting trees, volunteering or reducing your carbon footprint will be great too.
Advertisement
Tutorials
+5.4k Grep : How to grep for strings inside binary data
+19.9k Golang : How to get time zone and load different time zone?
+8.7k Golang : Sort and reverse sort a slice of floats
+14.2k Golang : Intercept Ctrl-C interrupt or kill signal and determine the signal type
+13.1k Golang : How to determine if user agent is a mobile device example
+27.2k Golang : Detect (OS) Operating System
+21.1k Golang : untar or extract tar ball archive example
+13.1k Golang : ROT47 (Caesar cipher by 47 characters) example
+2k Golang : Fix go-cron set time not working issue
+5.9k Golang : Pat multiplexer routing example
+14.1k Golang : Get query string value on a POST request
+18.2k Golang : Convert seconds to human readable time format example