2011-07-13 18 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アドレスを使用しようとしました。それはどちらもうまくいかなかった。

助けありがとうございました:)。

マイク。

+0

例外はありません。一見、コードは大丈夫です。 – SJuan76

+3

Writerをflush()してclose()を追加すると... – SJuan76

+0

flush()が必要でした-.- ..ありがとう:D –

答えて

1

[OK]を、その後、答えとして、あなたは質問;-)

はフラッシュ()とWriterに近い()を追加を閉じることができるように。

希望に役立ちます。 :-)

関連する問題