자바에서 32 비트 정수 값으로 IP 주소의 십진수 표현을 변환하는 방법은 무엇입니까? 내가 어떻게해야합니까,Java : 32 비트 int로 변환하는 방법?
public class getIp {
public static void main(String[] args) {
InetAddress ipaddress;
try {
ipaddress=InetAddress.getLocalHost();
System.out.println(ipaddress);
}
catch(UnknownHostException ex)
{
System.out.println(ex.toString());
}
}
}
내가 문자열로 32 비트 정수 값과보다 결과를 변환해야보다 : 가 나는 IP 주소를 얻기 위해의 InetAddress 클래스와에는 getLocalHost 방법을 사용합니까? 감사합니다.
@Marcelo Cantos, double은 IPv6을 수용 할 수 있으며 [사용 방법을 묻기 전에 Double.doubleToRawLongBits (d)]를 사용할 수 있습니다. 하지만 IP 주소를 두 배로 유지하는 것은 괴로운 것처럼 보이지 않습니까? – bestsss
@bestsss : 아니오, 이중 (및 긴)은 64 비트 만 가지고, IPv6 주소는 각각 128 비트를가집니다. –
@ Paŭlo Ebermann, 확실합니다. 당신은 하나의 더블 이상이 필요합니다. 그것은 농담이었습니다. 오케이, 잘 작동하지 않았을거야. – bestsss