Documente Academic
Documente Profesional
Documente Cultură
try{
InetAddress adr=InetAddress.getLocalHost();
InetAddress[] toate=InetAddress.getAllByName(adr.getHostName());
for (int =0;i<toate.length;i++){
System.out.println("\n Interfata nr."+i+"are adresa ip
"+toate[i].getHostAddress() +"si numele:" + toate[i].getHostName());
}
} catch {....}
try {
while (true){
new TestNet (ss.accept()); //la fiecare iteratie a buclei se creaza cate un fir de
executie
//argumentul pentru constructor este rezultatul metodei accept()
//fiecare iteratie a buclei while se incheie in momentul in care soseste o
cerere de la un //client dupa care urmeaza o alta iteratie care iar astepta o
cerere s.a.m.d.
}
}catch (IOException e){}
}//gata main
Socket s //rezultatul metodei accept(socketul cu care va comunica cu
clientul)
TestNet(Socket s){ //constructorul ;
this.s=s;//rezultatul lui accept() e pus in s
start(); //firul se autolanseaza in executie
}
//Tema :recapitulare cap 2 la Java si firele de executie
//Metoda run()- cand se termina run se termina si firul de ex
public void run(){
System.out.println("Conexiune pe portul "+s.getLocalPort());
System.out.println("Conexiune cu
clientul :"+s.getInetAddress().getHostAddress());
String text;
try {
DataInputStream dis=new DataInputStream(s.getInputStream());
//cream un flux de intrare cu care putem citi mesajele de la client
String numef=dis.readLine();//citim o linie de text de la client care reprezinta
numele //fisierului solicitat de catre client
System.out.println("-->+numef");
PrintStream ps = new PrintStream(s.getOutputStream());
//cream un flux de iesire cu care trimitem msj catre client
DataInputStream fis=new DataInputStream(new FileInputStream(numef));
//deschidem fisierul solicitat de cleint cu un flux de intrare de tip
datainputstream
while (fis.available()!=0){
//cat timp nu am ajuns la sf fisierului citim o linie din fisierul de intrare si o
trimitem pe fluxul //de iesire
linie=dis.readLine();
ps.println(linie);
}
ps.println(".");//semnalizare sfarsit fisier
} catch (IOException e){ System.out.println("Eroare e");}
}
}