ソケットを介して整数値を送信したい。 私はソケットを開いてリクエストを待つpythonスクリプトを持っています。反対側には、値を取得するためにこのソケットでリクエストを送信するJavaサーブレットがあります。TCPソケット通信Java - Python
すべての通信がうまく機能するのは、Javaから取得した値がEOFexceptionを引き起こすことです。私はPythonスクリプト(私はこの言語の専門家ではない)でいくつかの変換とフォーマットを試しましたが、何も動作しません。
代わりに、エコーソケットをpythonで使用し、そのソケットをすべてピックアップしてJavaに送り返すと正常に動作します。
しかし、私は単純な価値を送る必要があります。
以下、この文字列値であり、Iは、フロートと試みた私が使用するコードの一部である:Pythonのエコーソケット[
[Pythonのソケット関連istructions]
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.bind(server_address)
sock.listen(1)
connection = sock.accept()
[Pythonのリターンaを:作業]
data = connection.recv(16)
if data:
connection.sendall(data)
ではなく、私がやりたいです
socket = new Socket(address, port);
dataInputStream = new DataInputStream(socket.getInputStream());
String content = dataInputStream.readUTF(); //EOFexception
Destination.value = content;
'DataInputStream'は、接続のもう一方の端が' DataOutputStream'を使用している場合にのみ使用されます。 Python側は、 'DataInputStream'が理解できる何も送信していません。通常の 'InputStream'を使用する必要があります。この問題を修正した後は、整数ではなくPythonから_string_値を送信しているという点で別の問題が見つかるでしょう。 –