go语言版的ip2long函数 go语言版的ip2long函数实例
不是JS 人气:1想了解go语言版的ip2long函数实例的相关内容吗,不是JS在本文为您仔细讲解go语言版的ip2long函数的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:go语言,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
}
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
}
希望本文所述对大家的Go语言程序设计有所帮助。
加载全部内容