1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| func toInt(ip string) int64 { i := 3 sum := int64(0) for j, v := range strings.Split(ip, ".") { intV, _ := strconv.ParseInt(v, 10, 64) sum = sum + intV*int64(math.Pow(float64(256), float64(i-j))) } fmt.Println(sum) return sum }
func toIp(num int64) string { s := make([]string, 4) i := 3 for i >= 0 { s[i] = strconv.FormatInt(num % 256,10) num /= 256 i-- } return strings.Join(s, ".") }
|