Buongiorno, spiego in poche parole cosa sto facendo: un progetto server-client multi thread che simula il gioco delle 3 carte ovvero indovina dove è l'asso e scommetti
ora il problema: il lato server non legge una stringa che gli invio da client ovvero quella di scelta dell'operazione da fare; tutto il codice prima viene eseguito ho verificato con delle semplici stampe.
posto di seguito il codice relativo al pezzo non funzionante
spero possiate aiutarmi con questo, altrimenti se servono altre spiegazioni chiedete pure!codice:server try /*prova a catturare errore nella lettura dall'input del client*/ { inFromClient=new BufferedReader(new InputStreamReader(socket.getInputStream())); s=inFromClient.readLine(); System.out.println("s letta e risp convertita"); risp=Integer.parseInt(s); } catch (IOException e) { System.out.println("Error " + e); } catch (NumberFormatException e2) { System.out.println("Error " + e2); } client /*stampa del menù effettuata su lato client così da rendere più veloce il processo*/ System.out.println("[1] Effettua Login "); System.out.println("[2] Effettua Registrazione "); System.out.println("[3] Gioca "); System.out.println("[0] Esci "); try /*provo a catturare errori nella creazione di flussi di entrata e di uscita*/ { fromStdIn=new BufferedReader(new InputStreamReader(System.in)); outToServer=new BufferedWriter(new OutputStreamWriter(clientSocket.getOutputStream())); inFromServer=new BufferedReader(new InputStreamReader(clientSocket.getInputStream())); System.out.println("Scegli cosa vuoi fare"); outToServer.write(s=fromStdIn.readLine()); System.out.println("s inviata"); risp=Integer.parseInt(s); } catch (IOException e) { System.out.println(" Error: " + e); }


Rispondi quotando
io pensavo di stare facendo bene in quel modo, quale sarebbe quindi il modo giusto da fare?? Nessuno me lo ha mai spiegato..
ho sempre usato il C, col Java trovo qualche difficoltà con tutte queste migliaia di classi esistenti
penso di seguirti quindi provo. 