Programowanie sieciowe w Javie Michał Kuciapski
Wyszukiwanie adresów
3 z 10 Klasa klasa InetAddress opisuje adres komputera w sieci poprzez nazwę/domenę, np. bsvc.univ.gda.pl oraz poprzez numer IP, np obiekty klasy InetAddress są tworzone poprzez metody statyczne, nie są dostępne żadne konstruktory wszystkie metody muszą zawierać deklaracje lub obsługę wyjątku UnknownHostException
4 z 10 Tworzenie obiektu InetAddress.getByName(String Nazwa) InetAddress.getAllByName(String Nazwa) InetAddress.getLocalHost(String Nazwa)
5 z 10 Przykład import java.net.*; public class Adresy { public static void main(String args[]){ try{ InetAddress lokalny = InetAddress.getLocalHost(); System.out.println("Adres komputera lokalnego: " + lokalny); InetAddress zdalny = InetAddress.getByName("netbeens.org"); System.out.println("Adres komputera "+ zdalny);
6 z 10 Przykład c.d. InetAddress wszystkieZdalny[] = InetAddress.getAllByName(" System.out.println("Adresy komputera to:"); for(int i=0; i<wszystkieZdalny.length; i++) { System.out.println(wszystkieZdalny[i]); } } catch (UnknownHostException he) { he.printStackTrace(); }
7 z 10 Metody Public String getHostName() – zwraca nazwę hosta Public byte[] getAddress() – zwraca adres hosta jako tablicę byte Public String getHostAddress() – zwraca nazwę hosta jako tekst Nie ma dostępnych metod typu setHostName() czy setHostAddress()
8 z 10 Metody – przykład import java.net.*; public class daneHosta { public static void main(String[] args) { String nHosta = "localhost"; try { InetAddress host = InetAddress.getByName(nHosta); byte[] adresIP = host.getAddress(); String adres = ""; }
9 z 10 Metody – przykład c.d. for (int i=0; i<adresIP.length; i++) { int przekNaByte = adresIP[i] < 0 ? adresIP[i] : adresIP[i]; adres += przekNaByte; if (i != adresIP.length -1) adres += "."; }
10 z 10 Metody – przykład c.d. System.out.println("Nazwa hosta: " + host.getHostName() + "\nadres IP poprzez tablicę: " + adres + "\nadres IP poprzez tekst: " + host.getHostAddress()); } catch(UnknownHostException e) { System.out.println("Host " + nHosta + "nie istnieje"); }