我建立了下面的socket连接,但是服务端程序没有运行。
Socket socket = new Socket("localhost",80); <==socket 连接建立成功
in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
String str = in.readLine(); <===
执行到readLine()时程序暂停,请问客户端程序然后会怎么处理?
Socket socket = new Socket("localhost",80); <==socket 连接建立成功
in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
String str = in.readLine(); <===
执行到readLine()时程序暂停,请问客户端程序然后会怎么处理?
import java.net.*;class TalkClient{
public TalkClient(){
try{
Socket socket=new Socket("127.0.0.1",4700);
//talk.setText(str+"\n"+"客户端正在启动...");
System.out.println("客户端正在启动...");
BufferedReader sin=new BufferedReader(new InputStreamReader(System.in));
PrintWriter os=new PrintWriter(socket.getOutputStream());
BufferedReader is=new BufferedReader(new InputStreamReader(socket.getInputStream()));
String readline;
readline=sin.readLine();
while(!readline.equals("bye")){
os.println(readline);
os.flush();
System.out.println("客户端:"+readline);
System.out.println("服务器端:"+is.readLine());
readline=sin.readLine();
}
os.close();
is.close();
socket.close();
}catch(ConnectException e){
System.out.println("服务器没有启动!"+e);
}catch(Exception e){
System.out.println(e);
}
}
public static void main(String[] args)
{
new TalkClient();
}
}
或者说服务端没有返回信息,怎么办?