python - golang中msgpack序列化array问题
大家讲道理
大家讲道理 2017-04-17 14:39:33
0
1
506

在python中,序列化一个包含多种数据类型的列表如下,

import msgpack

data = ['abc', 12345, 1.2345]
buf = msgpack.dumps(data)
print(buf)

不知道golang下怎么使用,官方的msgpack好像只能序列同种类型的array;
另外的我想的办法是将array内的所有数据序列化一次,全部弄成字符串再使用array序列化,但是有点担心效率问题。

各位有好的办法也请告知在下~

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回覆(1)
黄舟

自己解決了,使用github.com/ugorji/go/codec[]interface{}是可以正常工作的。

package main

import (
    "bytes"
    "fmt"
    "github.com/ugorji/go/codec"
)

func main() {
    mh := &codec.MsgpackHandle{RawToString: true}
    data := []interface{}{"abc", 12345, 1.2345}
    buf := &bytes.Buffer{}
    enc := codec.NewEncoder(buf, mh)
    enc.Encode(data)
    fmt.Printf("%x", buf)
}
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!