в системе клиент-сервер, реализованной с помощью сокетов, почему я не могу использовать realLine как на клиенте, так и на сервере? - PullRequest
1 голос
/ 22 апреля 2020

Я пытаюсь создать два простых класса: клиент и сервер, но я не могу понять, как я могу позволить им общаться с помощью метода realLine (если это возможно). Вот мой код клиента:

public class CLient{ 
    public static void main(String args[]) {
    try { 
        System.out.println("Apertura connessione…");
     Socket s1 = new Socket ("127.0.0.1", 2000);

InputStream is = s1.getInputStream(); 

BufferedReader dis = new BufferedReader( new InputStreamReader(is));
OutputStreamWriter out = new OutputStreamWriter(s1.getOutputStream(),"latin1");

System.out.println("Risposta del server: " + dis.read());
  out.write("3333640467");
    out.flush();
dis.close(); 
s1.close(); 
System.out.println("Chiusura connessione effettuata"); 
    } 
catch (ConnectException connExc) { 
    System.err.println("Errore nella connessione "); 
} catch (IOException ex) {
    ex.printStackTrace(); } } }

, а вот код моего сервера:

public class Server {
    // crea un oggetto server

public static void main(String[] args) throws IOException{
    ServerSocket s=null;
    try{
    s = new ServerSocket(2000);    
    }catch(IOException e){
    System.out.println("errore");
    }
    while(true){
        BufferedReader in=null;
        OutputStreamWriter out=null;
    try{
    Socket sock = s.accept();
    InputStream is = sock.getInputStream(); 
    in = new BufferedReader(new InputStreamReader(is));
    out = new OutputStreamWriter(sock.getOutputStream(),"latin1");
    out.write("ciao");
    out.flush();
    System.out.println("Risposta del client: " + in.readLine());
   /*
        corpo dell'istruzione 
        */


   System.out.println ("Errore nella comunic. con il client");
 }finally{
if (in != null) in.close();
if (out != null) out.close();
System.out.println ("Connessione col client chiusa");
 }

}
}
}

, если я использую readLine только в одном из классов, он работает, но не в обоих классах. Почему? (я новичок в веб-программировании)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...