あるJavaプログラムから別のJavaプログラムにintを送信します(同じコンピューター上でその分)。ただし、例外が発生し、接続されない場合があります。
スレッド「main」の例外java.net.ConnectException:接続が拒否されました:java.net.PlainSocketImpl.socketConnect(ネイティブメソッド)のjava.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)のjava.net.PlainSocketImplで接続します。 connectToAddress(PlainSocketImpl.java:195)at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)at java.net.Socket.connect(Socket.java :529)at java.net.Socket.connect(Socket.java:478)at java.net.Socket。(Socket.java:375)at java.net.Socket。(Socket.java:189)at Client.main (Client.java:6)
送信するためのコードは次のとおりです。
Socket socket = new Socket("localhost" , 8080);
DataOutputStream out = new DataOutputStream(socket.getOutputStream());
out.writeInt(5);
socket.close();
そして受け取るために:
ServerSocket serverSocket = new ServerSocket(8080);
Socket socket = serverSocket.accept();
DataInputStream din = new DataInputStream(socket.getInputStream());
System.out.println(din.readInt());
socket.close();
うまくいくこともあればうまくいかないこともあるので、それは奇妙なことです。誰かがその理由について何か考えを持っていますか?