探索高效数据序列化:MessagePack for Golang 深度解读
package main
import (
"fmt"
"github.com/vmihailenco/msgpack/v5"
)
type Example struct {
Name string
Age int
}
func main() {
// 创建一个Example实例
example := Example{"John", 30}
// 序列化
data, err := msgpack.Marshal(example)
if err != nil {
fmt.Println("序列化错误:", err)
return
}
fmt.Println("序列化数据:", data)
// 反序列化
var newExample Example
err = msgpack.Unmarshal(data, &newExample)
if err != nil {
fmt.Println("反序列化错误:", err)
return
}
fmt.Printf("反序列化结果: %+v\n", newExample)
}
这段代码演示了如何使用MessagePack for Golang进行对象的序列化和反序列化。首先创建了一个结构体实例,然后使用msgpack.Marshal
函数对其进行序列化,接着使用msgpack.Unmarshal
函数将序列化的数据反序列化回原始的结构体对象。代码中包含了错误处理,以确保在发生序列化或反序列化错误时能够及时响应。
评论已关闭