Java에서 InetAddress 개체 만들기
문자열 (예 : localhost
또는 127.0.0.1
) 에있는 IP 번호 또는 이름으로 지정된 주소를 InetAdress 개체 로 변환 하려고 합니다. 생성자는 없지만 InetAddress 를 반환하는 정적 메서드가 있습니다. 따라서 호스트 이름을 얻더라도 문제가되지 않지만 IP 번호를 얻으면 어떻게됩니까? byte [] 를 얻는 한 가지 방법이 있지만 이것이 어떻게 도움이 될 수 있는지 잘 모르겠습니다. 다른 모든 방법은 호스트 이름을 가져옵니다.
getByName 또는 getByAddress 를 사용할 수 있어야합니다 .
호스트 이름은 "java.sun.com"과 같은 시스템 이름이거나 해당 IP 주소의 텍스트 표현 일 수 있습니다.
InetAddress addr = InetAddress.getByName("127.0.0.1");
바이트 배열을 취하는 메소드는 다음과 같이 사용할 수 있습니다.
byte[] ipAddr = new byte[]{127, 0, 0, 1};
InetAddress addr = InetAddress.getByAddress(ipAddr);
InetAddress 용 API에서
호스트 이름은 "java.sun.com"과 같은 시스템 이름이거나 해당 IP 주소의 텍스트 표현 일 수 있습니다. 리터럴 IP 주소가 제공되면 주소 형식의 유효성 만 확인됩니다.
ip = InetAddress.getByAddress(new byte[] {
(byte)192, (byte)168, (byte)0, (byte)102}
);
InetAddress.getByName은 IP 주소에서도 작동합니다.
JavaDoc에서
호스트 이름은 "java.sun.com"과 같은 시스템 이름이거나 해당 IP 주소의 텍스트 표현 일 수 있습니다. 리터럴 IP 주소가 제공되면 주소 형식의 유효성 만 확인됩니다.
API는 사용하기 매우 쉽습니다.
// Lookup the dns, if the ip exists.
if (!ip.isEmpty()) {
InetAddress inetAddress = InetAddress.getByName(ip);
dns = inetAddress.getCanonicalHostName();
}
참고 URL : https://stackoverflow.com/questions/5719449/creating-inetaddress-object-in-java
'developer tip' 카테고리의 다른 글
qsort 대 std :: sort의 성능? (0) | 2020.11.04 |
---|---|
C #을 사용하여 ASP.NET MVC 3에서 캐스케이드 드롭 다운을 만드는 가장 쉬운 방법 (0) | 2020.11.04 |
정적 멤버에 대한 정의되지 않은 참조 (0) | 2020.11.04 |
JSON.NET 라이브러리없이 JSON을 구문 분석하는 방법은 무엇입니까? (0) | 2020.11.04 |
템플릿 함수에 대한 정의되지 않은 참조 (0) | 2020.11.04 |