Golang语言版的ip2long函数实例

时间:2022-05-05
本文章向大家介绍Golang语言版的ip2long函数实例,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

本文实例讲述了go语言版的ip2long函数。分享给大家供大家参考。具体分析如下:

这里介绍的go语言版的ip2long 函数不会对 IP 的合法性进行校验。

// 注意: 该函数不会对 IP 的合法性进行校验
func Ip2Long(ip string) (ips string) {
    var ip_pieces = strings.Split(ip, ".")
 ip_1, _ := strconv.ParseInt(ip_pieces[0], 10, 32)
 ip_2, _ := strconv.ParseInt(ip_pieces[1], 10, 32)
 ip_3, _ := strconv.ParseInt(ip_pieces[2], 10, 32)
 ip_4, _ := strconv.ParseInt(ip_pieces[3], 10, 32)
 var ip_bin string = fmt.Sprintf("%08b%08b%08b%08b", ip_1, ip_2, ip_3, ip_4)
 ip_int, _ := strconv.ParseInt(ip_bin, 2, 64)
 return
}