Ciao a tutti,
ho realizzato un software java per la comunicazione client server, volevo chiedere se esiste un modo per "forzare" l'invio di due messaggi dal server al client.
Ecco il codice Server e mi spiego meglio:
in questo modo tra il mio output "Chiave pubblica......" e l'output "Username" ho il problema di dover premere invio ed avere una riga vuota tra gli output.codice:out.println("Chiave pubblica: ("+n+","+e+")"); out.flush(); out.println("Username:"); out.flush(); String username=in.nextLine(); out.println("Password"); out.flush(); String psw=in.nextLine();
Mentre vorrei che venissero inviati prima uno poi l'altro senza dover dare invio dal client.
Se può servire il codice del client è il seguente:
Grazie per l'aiuto!!codice:package client1; import java.io.*; import java.net.*; import java.util.Scanner; import java.util.NoSuchElementException; public class Client1 { public Client1(String IP, int port) { this.IP=IP; this.port=port; } public void startClient() throws IOException { Socket sock=new Socket(IP,port); System.out.println("Connessione stabilita"); Scanner sockIN=new Scanner(sock.getInputStream()); PrintWriter sockOUT=new PrintWriter(sock.getOutputStream()); Scanner stdin=new Scanner(System.in); String a=sockIN.nextLine(); System.out.println(a); try{ while(true) { String input=stdin.nextLine(); sockOUT.println(input); sockOUT.flush(); String sockline=sockIN.nextLine(); System.out.println(sockline); } }catch(NoSuchElementException e) { System.out.println("Connessione chiusa"); }finally { stdin.close(); sockIN.close(); sockOUT.close(); sock.close(); } } private String IP; private int port; }![]()


					
					
					
						
  Rispondi quotando
						
						
			