golang进行存储的过程是:1、创建一个Go示例文件,导入JSON数据;2、定义了一个Person的结构体类型;3、通过“main”函数来启动程序,读取名为 "people.json" 文件中所有数据并将其存储在data变量中;4、创建一个空的Person类型切片people,并将结果存储在&people指针中;5、通过“fmt.Printf()”输出people变量的值。
本教程操作系统:Windows10系统、Go1.20.1版本、Dell G3电脑。
Golang通常通过使用内置的encoding、json 和 database/sql 等标准库和第三方库来存储和读取数据。
下面我们将介绍一些示例代码来演示如何使用这些库存储和检索数据。
存储到文件:
以下是将JSON数据存储到文件的示例代码:
package main import ( "encoding/json" "fmt" "io/ioutil" ) type Person struct { Name string `json:"name"` Age int `json:"age"` } func main() { people := []Person{ Person{"Alice", 25}, Person{"Bob", 30}, } data, err := json.Marshal(people) if err != nil { panic(err) } err = ioutil.WriteFile("people.json", data, 0644) if err != nil { panic(err) } fmt.Println("Data saved to file.") }
该示例使用 json.Marshal() 函数将 People 切片转换为 JSON 字节数据,然后使用 ioutil.WriteFile() 写入磁盘。
读取文件:
以下是从文件中读取 JSON 数据并解析为结构体切片的示例代码:
package main import ( "encoding/json" "fmt" "io/ioutil" ) type Person struct { Name string `json:"name"` Age int `json:"age"` } func main() { data, err := ioutil.ReadFile("people.json") if err != nil { panic(err) } var people []Person err = json.Unmarshal(data, &people) if err != nil { panic(err) } fmt.Printf("%+v\n", people) }
以上是golang怎么进行存储的详细内容。更多信息请关注PHP中文网其他相关文章!