最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

golang值類型轉(zhuǎn)換成[]uint8類型的操作

 更新時間:2021年05月08日 09:30:26   作者:愛了李召君  
這篇文章主要介紹了golang值類型轉(zhuǎn)換成[]uint8類型的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

在go語言中,byte其實(shí)是uint8的別名,byte 和 uint8 之間可以直接進(jìn)行互轉(zhuǎn)。

目前來只能將0~255范圍的int轉(zhuǎn)成byte。

func Int64ToBytes(num int64) []uint8 {
 var buffer bytes.Buffer
 err := binary.Write(&buffer, binary.BigEndian, num)
 if err != nil {
  logs.Error("int64轉(zhuǎn)[]uint8失敗%v", err)
 }
 return buffer.Bytes()
}

在使用binary.Write()的時候,要注意一些問題:

Write writes the binary representation of data into w.

Data must be a fixed-size value or a slice of fixed-size // values, or a pointer to such data.

Boolean values encode as one byte: 1 for true, and 0 for false.

Bytes written to w are encoded using the specified byte order and read from successive fields of the data. When writing structs, zero values are written for fields with blank (_) field names.

我的翻譯是這樣的(本人英文不好,勿怪!)

Write將數(shù)據(jù)的二進(jìn)制表示形式寫入w。

數(shù)據(jù)必須是固定大小的值或固定大小的值的切片,或者是指向此類數(shù)據(jù)的指針

布爾值編碼為一個字節(jié):1表示true,0表示false。

寫入w的字節(jié)使用指定的字節(jié)順序進(jìn)行編碼,并從數(shù)據(jù)的連續(xù)字段中讀取。

寫入結(jié)構(gòu)時,將為空白(_)字段寫入零值名稱。

補(bǔ)充:golang關(guān)于json庫的一個比較容易陷入的坑 uint8[]數(shù)組的json轉(zhuǎn)換問題.

類似這個CA如果實(shí)例轉(zhuǎn)化成json.List會變成字符串.

type CA struct {
 List []uint8
}
 
func main() {
 ca := CA{[]uint8{1,2,3,4,5,6,7,8,9,0}}
 r, _ := json.Marshal(ca)
 fmt.Println(string(r)) //{"List":"AQIDBAUGBwgJAA=="}
}

而我們希望的是要一個正常的json. 只有 int8 byte uint8 這種8位的json庫會給我們當(dāng)成字符串處理.想要解決.如果拍腦袋就不能用這幾種類型了.需要使用16 32 64位的數(shù)字才可以正常轉(zhuǎn)換成json字符串.

{"List":[1,2,3,4,5,6,7,8,9,0]}

但是不用擔(dān)心. Unmarshal這個 我們認(rèn)為不想要的json字符串 重新到CA的其他實(shí)例 會得到想要的結(jié)果.

如果是跨語言的json通信就要小心了.

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

相關(guān)文章

  • Go中時間與時區(qū)問題的深入講解

    Go中時間與時區(qū)問題的深入講解

    go語言中如果不設(shè)置指定的時區(qū),通過time.Now()獲取到的就是本地時區(qū),下面這篇文章主要給大家介紹了關(guān)于Go中時間與時區(qū)問題的相關(guān)資料,需要的朋友可以參考下
    2021-12-12
  • Golang通過SSH執(zhí)行交換機(jī)操作實(shí)現(xiàn)

    Golang通過SSH執(zhí)行交換機(jī)操作實(shí)現(xiàn)

    這篇文章主要介紹了Golang通過SSH執(zhí)行交換機(jī)操作實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • 基于Golang 高并發(fā)問題的解決方案

    基于Golang 高并發(fā)問題的解決方案

    這篇文章主要介紹了Golang 高并發(fā)問題的解決方案,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-05-05
  • 解決GOPATH在GOLAND中的坑

    解決GOPATH在GOLAND中的坑

    這篇文章主要介紹了解決GOPATH在GOLAND中的坑,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • go?doudou應(yīng)用中使用枚舉類型教程示例

    go?doudou應(yīng)用中使用枚舉類型教程示例

    這篇文章主要為大家介紹了go?doudou應(yīng)用中使用枚舉類型教程示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-12-12
  • Golang基礎(chǔ)之函數(shù)使用(參數(shù)傳值)實(shí)例詳解

    Golang基礎(chǔ)之函數(shù)使用(參數(shù)傳值)實(shí)例詳解

    這篇文章主要為大家介紹了Golang基礎(chǔ)之函數(shù)使用(參數(shù)傳值)實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-10-10
  • Go通過SJSON實(shí)現(xiàn)動態(tài)修改JSON

    Go通過SJSON實(shí)現(xiàn)動態(tài)修改JSON

    在Go語言 json 處理領(lǐng)域,在 json 數(shù)據(jù)處理中,讀取與修改是兩個核心需求,本文我們就來看看如何使用SJSON進(jìn)行動態(tài)修改JSON吧,有需要的小伙伴可以了解下
    2025-03-03
  • golang數(shù)據(jù)結(jié)構(gòu)之golang稀疏數(shù)組sparsearray詳解

    golang數(shù)據(jù)結(jié)構(gòu)之golang稀疏數(shù)組sparsearray詳解

    這篇文章主要介紹了golang數(shù)據(jù)結(jié)構(gòu)之golang稀疏數(shù)組sparsearray的相關(guān)知識,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-09-09
  • golang實(shí)現(xiàn)redis的延時消息隊列功能示例

    golang實(shí)現(xiàn)redis的延時消息隊列功能示例

    這篇文章主要介紹了golang實(shí)現(xiàn)redis的延時消息隊列功能,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • go panic時如何讓函數(shù)返回數(shù)據(jù)?

    go panic時如何讓函數(shù)返回數(shù)據(jù)?

    今天小編就為大家分享一篇關(guān)于go panic時如何讓函數(shù)返回數(shù)據(jù)?,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-04-04

最新評論

永顺县| 屯门区| 连南| 怀集县| 开平市| 东源县| 怀化市| 怀集县| 手游| 普兰县| 青神县| 双辽市| 五寨县| 新龙县| 潜江市| 永靖县| 阳谷县| 罗平县| 专栏| 贡山| 靖安县| 丽江市| 子洲县| 沁源县| 温州市| 屏南县| 鹰潭市| 章丘市| 随州市| 无为县| 武夷山市| 马公市| 二手房| 蒲城县| 南汇区| 文成县| 黑河市| 庐江县| 青海省| 佛冈县| 柳林县|