Quebrar strings e tratar

2 respostas
P

Preciso pegar uma string que na verdade é um endereço IP que está no formato 192.168.101.001 (por exemplo) recebendo esse valor eu preciso faze-lo ficar em um formato “válido” para um IP que na verdade seria 192.168.101.1, sei que dá para usar um split e separar a string nos “pontos” mas e para eu retirar os “zeros” que vem antes dos números?
Alguém pode indicar uma saida?

2 Respostas

cristianomariano

Acho que voce pode fazer um cast para inteiro ou fazer um replaceAll. De uma estudada nessas duas saidas.
Abraço.

T

192.168.101.001 é válido também. Por que é que você quer tirar os zeros?

Uma forma de você fazer isso sem usar "split" e ter certeza de que os valores vão de 0 a 255 é usar java.net.InetAddress.

import java.net.InetAddress;
import java.net.UnknownHostException;

class TesteIPAddress {
    public static String normalizeIP (String ip) throws UnknownHostException {
        InetAddress addr = InetAddress.getByName (ip);
        return addr.getHostAddress();
    }
    public static void main(String[] args) throws Exception {
        System.out.println (normalizeIP ("192.168.101.001")); // imprime 192.168.101.1
        System.out.println (normalizeIP ("www.guj.com.br")); // imprime 209.135.140.171
    }
}
Criado 3 de maio de 2006
Ultima resposta 3 de mai. de 2006
Respostas 2
Participantes 3