簡體   English   中英

錯誤幫助java.net.SocketException:連接重置

[英]Error Help java.net.SocketException: Connection reset

這是我第一次使用Socket客戶端服務器系統。 我遇到了系統服務器端的錯誤,我不知道它來自哪里。 我的客戶端運行正常並關閉,但我的服務器這是功能

   public void run() throws Exception
{
      ServerSocket SRVSCK = new ServerSocket(444);
      Socket Sock = SRVSCK.accept();
      String Message="";
      InputStreamReader IR = new InputStreamReader(Sock.getInputStream());
      BufferedReader BR = new BufferedReader(IR);
      Message = BR.readLine();
      while(Message!="exit"){
      System.out.println(Message);
      Message = BR.readLine();
      }
      SRVSCK.close();
      Sock.close();
     System.out.println("here");
   }

但這是我得到的錯誤。 它沒有走出while循環。 我已經嘗試基於Message的值盡早打破循環,但事實並非如此。 我無法弄清楚原因。 我檢查了線程,似乎沒有任何相同的東西。 如果重要,來自客戶端的信息來自文件。

首先,您應該堅持使用以小寫字母開頭的變量名稱的Java命名約定。 接下來,在比較字符串時,不要使用:

string1 == string2
string1 != string2

那些不行。 相反,使用

string1.equals(string2)

Message!="exit"不應用於字符串比較。 比較使用java equals方法中的String。 采用

!Message.equals("exit")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM