1

私はJavaにかなり慣れていないので、現在ソケットとバッファを試しています。

私が試したかったのは、あるローカル Java アプリと別のローカル Java アプリからの接続をインスタンス化することだけでした。ServerSocket と Socket を使用しています。

サーバー アプリには、接続をリッスンするスレッドがあります。

    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 として使用してみました。それもうまくいきませんでした。

どんな助けでも感謝します:)。

マイク。

4

1 に答える 1

1

それでは、質問を閉じることができるように答えとして;-)

Writer に flush() と close() を追加します。

それが役立つことを願っています。:-)

于 2011-07-14T07:31:15.253 に答える