Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Printing structs; convert structs to JSON format easily.
// Printing structs.
// http://research.swtch.com/gotour
package main
import (
"encoding/json"
"fmt"
"log"
)
type Arc struct {
Head string
Modifier string
}
func main() {
arc := Arc{"saw", "He"}
fmt.Printf("%v\n", arc)
fmt.Printf("%+v\n", arc)
fmt.Printf("%#v\n", arc)
// Convert structs to JSON.
data, err := json.Marshal(arc)
if err != nil {
log.Fatal(err)
}
fmt.Printf("%s\n", data)
}
@solarfly73

This comment has been minimized.

Copy link

@solarfly73 solarfly73 commented May 30, 2015

Yes, that's what I ended up doing. The error I made was that Marshal has 2 return values and I embedded the return into a function, which Bob says is bad habit and shouldn't be done in Go. Once I made the call return two variables (to separate err), then Println didn't print the byte array.

Thanks!!

@SerkanSipahi

This comment has been minimized.

Copy link

@SerkanSipahi SerkanSipahi commented Mar 4, 2017

thanks works fine for me :)

@sarnobat

This comment has been minimized.

Copy link

@sarnobat sarnobat commented May 3, 2021

Works without any extra effort (for private fields too).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment