[英]Socket Communicatin BufferedReader
我對緩沖區讀取器了解不多,但是我的電話掛在應該讀取任何建議的地方
import java.io.*;
import java.net.*;
public class Host
{
public static void main(String args[])throws Exception
{
ServerSocket ss = new ServerSocket(5001);
Socket s=new Socket("127.0.0.1",5001);
s=ss.accept();
PrintWriter writer = new PrintWriter(s.getOutputStream(), true);
writer.write("Time");
writer.println("time");
BufferedReader reader = new BufferedReader(new InputStreamReader(s.getInputStream()));
String test =reader.readLine();
System.out.println(test);
s.close();
ss.close();
}
}
對方沒有發送線路或關閉套接字。 原因:
Socket s=new Socket("127.0.0.1",5001);
在這里,您正在與自己建立聯系。
s=ss.accept();
在這里,您將丟棄該Socket
並接受一個新的Socket
,這是您連接的另一端,而您的另一端剛剛被丟棄。
String test =reader.readLine();
在這里,您正在嘗試從對等端讀取一條永遠不會到達的行,因為對等端是您自己,而您已經丟棄了Socket.
在下一行分配變量時,無需初始化任何變量。 它應該是:
Socket s = ss.accept();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.