Rumah >pembangunan bahagian belakang >Golang >golang int ke IP
Di Golang, kita selalunya perlu menukar alamat IP jenis integer kepada alamat IP jenis rentetan, atau sebaliknya, menukar alamat IP jenis rentetan kepada alamat IP jenis integer.
Golang menyediakan fungsi perpustakaan yang mudah untuk mencapai penukaran ini. Penukaran IP daripada jenis integer kepada jenis rentetan dan daripada jenis rentetan kepada jenis integer boleh dilengkapkan menggunakan fungsi dan kaedah berikut.
Tukar alamat IP jenis integer kepada alamat IP jenis rentetan:
func IntToIP(ip uint32) net.IP { return net.IPv4(byte(ip>>24), byte(ip>>16), byte(ip>>8), byte(ip)) }
Fungsi ini menukar alamat IP integer yang tidak ditandatangani (uint32) kepada alamat IPv4, mengembalikan jenis net.IP struktur. Kita boleh menukar alamat IP kepada jenis rentetan dengan menggunakan kaedah String().
Contoh penggunaan:
ip := uint32(3232235876) // 对应IP地址为192.168.1.100 ipAddr := IntToIP(ip) fmt.Println(ipAddr.String()) // output: "192.168.1.100"
Tukar alamat IP jenis rentetan kepada alamat IP jenis integer:
func IPToInt(ip net.IP) uint32 { return binary.BigEndian.Uint32(ip.To4()) }
Fungsi ini menerima alamat IP (jenis net.IP) Sebagai parameter, dan mengembalikan jenis integer tidak bertanda yang sepadan (uint32). Di dalam fungsi, kami menggunakan fungsi binary.BigEndian.Uint32() untuk menukar alamat IPv4 kepada integer tidak bertanda 32-bit.
Contoh penggunaan:
ipStr := "192.168.1.100" ipAddr := net.ParseIP(ipStr) ipInt := IPToInt(ipAddr) fmt.Println(ipInt) // output: 3232235876
Ringkasan:
Dalam siaran ini, kami membincangkan menukar alamat IP jenis integer kepada alamat IP jenis rentetan di Golang dan kaedah untuk menukar alamat IP jenis rentetan kepada alamat IP jenis integer. Kami menggunakan fungsi net.IP type dan binary.BigEndian.Uint32() yang disediakan oleh Golang untuk mencapai penukaran ini. Ini adalah operasi yang sangat biasa dalam pengaturcaraan rangkaian dan pengurusan sistem. Fungsi dan kaedah ini boleh menjadikan pembangunan Golang lebih mudah dan cekap.
Atas ialah kandungan terperinci golang int ke IP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!