From 7a7441da77bb5551327d141c7e94ce7db5ac3e2a Mon Sep 17 00:00:00 2001 From: "suguo.yao" Date: Thu, 3 Mar 2022 15:10:45 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9F=BA=E6=9C=AC=E4=BE=8B=E5=AD=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 4 ++++ go.mod | 10 ++++++++++ main.go | 28 ++++++++++++++++++++++++++++ readme.md | 5 +++++ 4 files changed, 47 insertions(+) create mode 100644 .gitignore create mode 100644 go.mod create mode 100644 main.go create mode 100644 readme.md diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7b1bb98 --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +go.sum +*.exe +logs/ +msgpack-demo \ No newline at end of file diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..bb64f6a --- /dev/null +++ b/go.mod @@ -0,0 +1,10 @@ +module myschools.me/suguo/msgpack-demo + +go 1.17 + +require ( + github.com/golang/protobuf v1.3.1 // indirect + github.com/vmihailenco/msgpack v3.3.3+incompatible // indirect + golang.org/x/net v0.0.0-20190603091049-60506f45cf65 // indirect + google.golang.org/appengine v1.6.7 // indirect +) diff --git a/main.go b/main.go new file mode 100644 index 0000000..9d2a442 --- /dev/null +++ b/main.go @@ -0,0 +1,28 @@ +package main + +import ( + "fmt" + + "github.com/vmihailenco/msgpack" +) + +func main() { + //编码 + b, err := msgpack.Marshal(true) + fmt.Printf("%v %#v\n", err, b) + + //解码 + var out bool + err = msgpack.Unmarshal([]byte{0xc3}, &out) + fmt.Println(err, out) + + //结构体编码 + in := map[string]interface{}{"foo": uint32(123456789), "hello": "world"} + b, err = msgpack.Marshal(in) + fmt.Printf("%v %#v\n", err, b) + + //结构体解码 + var out1 map[string]interface{} + err = msgpack.Unmarshal(b, &out1) + fmt.Printf("%v %#v\n", err, out1) +} diff --git a/readme.md b/readme.md new file mode 100644 index 0000000..1679662 --- /dev/null +++ b/readme.md @@ -0,0 +1,5 @@ +message pack 解压包demo +=== + +#### 组件 +github.com/vmihailenco/msgpack \ No newline at end of file