2011-07-13 49 views
1

我對java很新,我目前正在嘗試套接字和緩衝區。從本地機器連接到ServerSocket

我想嘗試的只是從一個本地java應用程序和另一個本地java應用程序實例化連接。我正在使用ServerSocket和套接字。

服務器應用程序有一個用於監聽連接螺紋:

public void run() { 

    try{ 

     ServerSocket serverSock = new ServerSocket(62666); 

     while(doRun){ 

      Socket sock = serverSock.accept(); 
      BufferedReader reader = new BufferedReader(new InputStreamReader(sock.getInputStream())); 

      InfoReader.gui.writeToTextArea(reader.readLine() + "\n"); 



      reader.close(); 

     } 
    }catch(IOException e){ 
     e.printStackTrace(); 
    } 

} 

的「客戶」只需發送一個字符串到服務器(以及它應該,但我不能使其工作):

try{ 
     Socket sock = new Socket("127.0.0.1",62666); 
     PrintWriter writer = new PrintWriter(sock.getOutputStream()); 
     writer.print("Connection works!"); 
    }catch(IOException e){ 
     e.printStackTrace(); 
    } 

我確定端口已打開並已轉發到本地計算機。我檢查過http://canyouseeme.org/

我也嘗試使用我的外部IP地址作爲客戶端中的套接字的IP。它也沒有工作。

任何幫助讚賞:)。

Mike。

+0

有沒有例外推出?乍一看,代碼看起來不錯。 – SJuan76

+3

也許添加一個刷新()和關閉()的作家... – SJuan76

+0

沖洗()是所有需要的-..- ..謝謝:D –

回答

1

確定,然後作爲一個答案,所以你可以關閉的問題;-)

添加的flush()和close()來的作家。

希望有所幫助。 :-)