snippetgoCritical
How can I get the string representation of a struct?
Viewed 0 times
howstructtherepresentationcanstringget
Problem
For my application, it does not matter if the string is human readable or not.
Solution
One popular way of encoding structs into strings is using JSON.
You have certain limitations such as not getting all the information (such as the specific type of each field), only serializing exported fields, and not handling recursive values. But it is a simple standard way of serializing data.
Working example:
Give this output:
https://play.golang.org/p/sx-xdSxAOG
You have certain limitations such as not getting all the information (such as the specific type of each field), only serializing exported fields, and not handling recursive values. But it is a simple standard way of serializing data.
Working example:
package main
import (
"fmt"
"encoding/json"
)
type s struct {
Int int
String string
ByteSlice []byte
}
func main() {
a := &s{42, "Hello World!", []byte{0,1,2,3,4}}
out, err := json.Marshal(a)
if err != nil {
panic (err)
}
fmt.Println(string(out))
}Give this output:
{"Int":42,"String":"Hello World!","ByteSlice":"AAECAwQ="}https://play.golang.org/p/sx-xdSxAOG
Code Snippets
package main
import (
"fmt"
"encoding/json"
)
type s struct {
Int int
String string
ByteSlice []byte
}
func main() {
a := &s{42, "Hello World!", []byte{0,1,2,3,4}}
out, err := json.Marshal(a)
if err != nil {
panic (err)
}
fmt.Println(string(out))
}{"Int":42,"String":"Hello World!","ByteSlice":"AAECAwQ="}Context
Stack Overflow Q#16331063, score: 143
Revisions (0)
No revisions yet.