Olá
Tenho uma string que representa um ip, por exemplo 10.19.20.5.
Como faço para saber se esse IP está dentro de um intervalo, digamos entre 10.29.20.0 e 10.19.20.255?
Olá
Tenho uma string que representa um ip, por exemplo 10.19.20.5.
Como faço para saber se esse IP está dentro de um intervalo, digamos entre 10.29.20.0 e 10.19.20.255?
[quote=agasea]Olá
Tenho uma string que representa um ip, por exemplo 10.19.20.5.
Como faço para saber se esse IP está dentro de um intervalo, digamos entre 10.29.20.0 e 10.19.20.255?[/quote]
O IP é na realidade um numero e não uma String. Isso que escreveu ai é uma forma padrão
de formatar o numero para ser inteligivel por humanos.
A opção é criar um classe IP que implemente Comparable.
Com isso vc saberá comparar dois IP. Com comparações sucessivas vc pode saber se está no intervalo.
Então como transformar a representação 10.19.20.5 em número?
Por que se transformar em número é só comparar, certo?
Use a classe java.net.InetAddress para transformar seu IP (“123.45.67.89”) em um array de bytes, usando o método getAddress().
Então, compare os arrays de bytes.
Ok, farei isso.