gpt4 book ai didi

go - 如何在 Go 中将 bson.Binary 转换为 []byte

转载 作者:数据小太阳 更新时间:2023-10-29 03:26:02 26 4
gpt4 key购买 nike

我正在编写一个小应用程序,它从网络(不是 MongoDB)接收 BSON 格式的消息,并且必须将字段保存在本地机器上的文件中。我正在使用 gopkg.in/mgo.v2/bson 进行消息解码,它工作正常。

几乎所有的东西都可以工作,除了一个。消息中有“用户定义的”二进制字段,我必须将其保存到单独的文件中。我尝试使用:

var pwr = msg["pwr"].([]byte)

但出现“错误 panic :接口(interface)转换:接口(interface)是 bson.Binary,而不是 []uint8”。

谁能给我一个例子,说明如何将 bson.Binary 转换为 []byte,这样我就可以将它保存到文件中。

最佳答案

这就是你想要的:

pwr := bson.Binary(msg["pwr"].(bson.Binary)).Data

但假设 msg["pwr"] 只能是 bson.Binary...如果这不是不变量,你应该首先进行类型断言(处理可能发生的类型不匹配情况)然后强制转换以获取数据字段。

关于go - 如何在 Go 中将 bson.Binary 转换为 []byte,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41616043/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com