簡體   English   中英

如何在 Go 中將 uint16 轉換為 2 字節字符串?

[英]How to convert a uint16 to a 2 byte string in Go?

我正在處理一些遺留數據,我經常需要將 uint16 轉換為 2 字節字符串。

這是我正在使用的(其中我是 uint16):

string([]byte {byte(i >> 8), byte(i & 0xFF)})

https://play.golang.org/p/423CAL-SJv

這看起來相當笨重。 是否有現有的庫函數來執行此操作? 我已經查看了字符串和二進制包,但沒有什么是顯而易見的。

雖然這對於您嘗試做的事情來說非常好,但encoding/binary包具有更多用於讀取和寫入二進制值的功能。

您可以使用

i := uint16(0x474F)

b := make([]byte, 2)
binary.BigEndian.PutUint16(b, i)
fmt.Println(string(b))
// GO

https://play.golang.org/p/IdDnnOtS2V

嘗試以下

t := strconv.Itoa(123)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM