パートナーアプリケーションでは、クライアントとサーバーのコードとポートを交換しました。これら2つのコードを2つの別々の端末で実行します。彼らはお互いに接続することができましたが、ある端末から別の端末にメッセージを送信できませんでした。Javaベースの2ウェイチャットアプリケーションが動作しない
import java.net.*;
import java.io.*;
import java.util.Scanner;
class ChatHead1
{
public static void main()throws Exception
{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
//Client
Socket sock = new Socket("127.0.0.1", 2000);
OutputStream ostream = sock.getOutputStream();
DataOutputStream dos = new DataOutputStream(ostream);
System.out.print("\nYou:");
String message1 = br.readLine(); //Inputting Message For Sending
dos.writeBytes(message1);
//Server
ServerSocket sersock = new ServerSocket(5000);
System.out.print("\nThem: ");
Socket sockServ = sersock.accept();
InputStream istream = sockServ.getInputStream();
DataInputStream dstream = new DataInputStream(istream);
String message2 = dstream.readLine();
System.out.println(message2); //Printing Received Message
//Client Close
dos.close();
ostream.close();
sock.close();
//Server Close
dstream .close();
istream.close();
sockServ.close();
sersock.close();
}
}
後
dos.flush();
を試してみて、 "ターミナル?"より具体的に言えば、私にとって「端末」はVT100を意味しますが、私はあなたがJava上でJavaを実行しているのか疑問です。あなたのハードウェアとネットワークの構成はまったく何ですか?また、動作しないと言ったときにどんなエラーが発生していますか? – markspace@markspace、私はコマンドプロンプトを意味しました。不適切な言葉をおかけして申し訳ありません。私は入力ストリームを開始する前に出力ストリームを閉じることで動作しています。そのような迅速な応答をありがとう..:D –