私は Java Socket サーバーと C++ クライアントを作成しました。ただし、クライアントは問題なくサーバーに接続します。しかし、私が何かクライアントサーバーを書くとき、サーバーはメッセージをキャッチしません。私が間違っていることは何ですか?
Java サーバーのコードの一部:
DataInputStream dis=new DataInputStream(usrSocket.getInputStream());
ByteArrayOutputStream out = new ByteArrayOutputStream();
int data;
while((data = dis.read())>=0) {
out.write(data);
}
byte[] bytes = out.toByteArray();
String decrypt = new String(bytes);
if(decrypt.equals("status")){
System.out.println("Status emitted.");
}
System.out.println("Received a message.");
C++ クライアントの書き込み:
QByteArray qba;
qba.append(text);
sock->write(qba.data());
qDebug() << "Send status";
私はそれについて助けが必要です、どうもありがとう。(その変数「テキスト」はQStringです)
編集
Java サーバー: これはすべてのコードの一部にすぎません。メイン スレッドは接続 (Socket sock = server.accept()) を待機し、ユーザーごとに新しいスレッドを作成します。私が公開した Java サーバーのコードは、ユーザー向けのスレッドの一部です。すべてのコードが必要な場合は、教えてください。
私は答えを待っています!ありがとうございます!返事が遅くなったらごめんなさい。