Does golang provide htonl/htons?

Trong lập trình C, khi tôi muốn gửi một số nguyên qua mạng, chúng ta cần sử dụng htonl () hoặc htons () để chuyển đổi số nguyên từ thứ tự byte máy chủ sang thứ tự byte mạng trước khi gửi nó.

Nhưng trong golang, tôi đã kiểm tra gói net, và không thể tìm thấy các chức năng tương tự như htons / htonl. Vì vậy, làm thế nào tôi nên gửi một số nguyên khi sử dụng golang? Tôi có cần tự triển khai htons / htonl không?

Thứ tự byte mạng chỉ là endian lớn, vì vậy bạn có thể sử dụng encoding/binary package để thực hiện mã hóa.

data := make([]byte, 6)
binary.BigEndian.PutUint16(data, 0x1011)
binary.BigEndian.PutUint32(data[2:6], 0x12131415)