You can customize json data
using field tags.
For example, I added field
tags to Employee struct like below.
type Employee struct {
FirstName string `json:"fName"`
LastName string `json:"lName"`
ID int `json:"id"`
}
Whenever you marshall Employee
type to a jsin string, it uses field tags instead of Actual field names.
Example
emp := Employee{FirstName:
"Krishna", LastName: "Gurram", ID: 123}
If you marshall ‘emp’, you will
get below json string.
{"fName":"Krishna","lName":"Gurram","id":123}
App.go
package main import ( "encoding/json" "fmt" ) //Employee represent an employee object type Employee struct { FirstName string `json:"fName"` LastName string `json:"lName"` ID int `json:"id"` } func main() { //Step 1: Create an object of type Employee emp := Employee{FirstName: "Krishna", LastName: "Gurram", ID: 123} //Step 2: Call json.Marshal function to convert given object to byte array empBytes, err := json.Marshal(emp) if err != nil { fmt.Println("Can't marshal emp") return } jsonStr := string(empBytes) fmt.Println(jsonStr) }
Output
{"fName":"Krishna","lName":"Gurram","id":123}
No comments:
Post a Comment