我正在考虑调用net.IP.String(), strings.Split(ip, "."),一些代码来计算所有的极端情况,最后net.ParseIP(s). 有没有更好的方法?下面是我当前实现的代码(没有处理特殊情况)。package mainimport ( "fmt" "net" "strconv" "strings")func main() { ip := net.ParseIP("127.1.0.0") next, err := NextIP(ip) if err != nil { panic(err) } fmt.Println(ip, next)}func NextIP(ip net.IP) (net.IP, error) { s := ip.String() sa := strings.Split(s, ".") i, err := strconv.Atoi(sa[2]) if err != nil { return nil, err } i++ sa[3] = strconv.Itoa(i) s = strings.Join(sa, ".") return net.ParseIP(s), nil}
3 回答
- 3 回答
- 0 关注
- 133 浏览
添加回答
举报
0/150
提交
取消