欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

golang struct轉json

錢琪琛2年前8瀏覽0評論

Golang中的struct類型是一種自定義的數據類型。它可以表示一組相關的數據項,并且可以使用結構體中的字段來訪問數據。在進行數據傳輸和存儲時,將結構體對象轉換為JSON格式數據是常見的需求。Golang中提供了豐富的庫函數來完成結構體到JSON數據的轉換。

// 一個示例的結構體對象
type User struct {
Name     string `json:"name"`
Age      int    `json:"age"`
Email    string `json:"email"`
Address  string `json:"address,omitempty"`
Password string `json:"-"`
}
// 結構體轉JSON數據
func (user *User) ToJSON() ([]byte, error) {
return json.Marshal(user)
}
// JSON數據轉結構體
func FromJSON(data []byte) (*User, error) {
user := new(User)
err := json.Unmarshal(data, user)
return user, err
}

在以上代碼中,我們定義了一個名為“User”的結構體。該結構體包含了一些用戶相關的數據項。其中,我們通過“json”標記為每個字段指定了JSON的Key值。在ToJSON方法中,我們使用json.Marshal函數將結構體對象轉換為JSON數據。在FromJSON方法中,我們使用json.Unmarshal函數將JSON數據轉換為一個User結構體對象。

需要注意的是,在結構體定義中,我們可以通過“-”或“omitempty”標記來控制字段是否被轉換為JSON數據。當使用“-”標記時,該字段將不會被輸出為JSON數據;當使用“omitempty”標記時,如果該字段的值為空,則不會被輸出為JSON數據。

Golang的結構體轉JSON是一個非常常見的操作。通過使用以上代碼中的JSON庫函數,我們可以方便的將結構體對象轉換為JSON格式的數據,并進行數據傳輸和存儲等操作。