binary序列化与反序列化
binary 性能一般,使用简单,适合定长的数据,例如bool, int8, uint8, int16, float32, complex64, ...
或者数组、包含定长成员变量的结构体。
有性能需求建议使用protocol buffer
【binary序列化与反序列化】性能比较:protocol buffer
> binary
> gob
> json
序列化
var n uint64
n = 500
buf := bytes.NewBuffer(nil)
err := binary.Write(buf, binary.LittleEndian, n)
if err != nil {
fmt.Println(err) }
fmt.Println(buf.Bytes())
反序列化
var sn uint64
r := bytes.NewReader(buf.Bytes())
err = binary.Read(r, binary.LittleEndian, &sn)
if err != nil {
fmt.Println(err)
}
fmt.Println(sn)
推荐阅读
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- Docker应用:容器间通信与Mariadb数据库主从复制
- 《真与假的困惑》???|《真与假的困惑》??? ——致良知是一种伟大的力量
- 第326天
- Shell-Bash变量与运算符
- 逻辑回归的理解与python示例
- Guava|Guava RateLimiter与限流算法
- 我和你之前距离
- CGI,FastCGI,PHP-CGI与PHP-FPM
- 原生家庭之痛与超越