Go语言开发数据转换成二进制

记得有一次和一家厂商做对接的时候,要求我们的图片数据转换成二进制这样传输过去,那么在go语言开发的时候,如何实现这一个需求呢,找遍go语言的标准库,没有发现对应的标准接口,最后在万能的github上面找到一个第三方框架 biu

一、基础数据和二进制互相转换
import (
    "bytes"
    "fmt"
    "github.com/imroc/biu"
)

func main() {
    fmt.Println(biu.ToBinaryString(3))
    fmt.Println(biu.ToBinaryString(int8(4)))
    fmt.Println(biu.ToBinaryString(uint16(2)))
    fmt.Println(biu.ToBinaryString([]byte{1, 2, 3}))
    s := biu.BytesToBinaryString([]byte("xxxx.png"))
    fmt.Println(s[1 : len(s)-1])
    fmt.Println(biu.ToBinaryString([]byte("zhangguo")))
}
out:
    [00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000011]
    00000100
    [00000000 00000010]
    [00000001 00000010 00000011]
    01111000 01111000 01111000 01111000 00101110 01110000 01101110 01100111
    [01111010 01101000 01100001 01101110 01100111 01100111 01110101 01101111]
二、图片数据类型转换成二进制或者base64
func ImageToBinary() {
    ff, er := ioutil.ReadFile("xxxx.png")
    if er != nil {
        fmt.Println(er)
    } else {
        fmt.Println(biu.ToBinaryString(ff))
        base64Str := base64.StdEncoding.EncodeToString(ff)
        fmt.Println(base64Str)
    }
}
写在最后,把图片转换成二进制给对方一般很少碰到,常见就是表单形式上传或者base64位,
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 照片没有任何PS,很多亲问这种短款衣服怎么搭配最佳,其实看你要什么感觉,想休闲点就配运动鞋,想正式点就高跟鞋,切记...
    ParisHe倩倩阅读 2,256评论 0 0
  • 时间回退到2014年清明节小长假 2014年4.5号 放假当天下午你发来微信,假期一起出去玩撒,市内或市外都可以。...
    sweetrandy阅读 1,157评论 0 3
  • 声明:这是一篇翻译文,原始文章首发于www.speareducation.com/spear-review/201...
    w王大铭阅读 8,193评论 0 3

友情链接更多精彩内容