Java Socket通信以及可能出现的问题解决(3)

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.Socket;

public class ShakingClient{
    public static void main(String[] args) throws IOException{

//创建客户端的套接字,设置连接的服务器的IP地址和端口号
        Socket socket=new Socket("169.254.132.203",2000);
        //输入流读取服务器发送的信息
        BufferedReader br=new BufferedReader(new InputStreamReader(socket.getInputStream()));
                //开启自动刷新缓冲区
        PrintWriter pw=new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())),true);           
                //从键盘读取数据
        BufferedReader ii=new BufferedReader(new InputStreamReader(System.in));
        System.out.println(br.readLine());
              //因为开启了自动刷新,且调用的是println方法,所以可以不调用flush方法
        pw.println("请求进入摇头耶稣的世界");
        //pw.flush();
        while(true) {
            String str=ii.readLine();
                //使用了回车符来保证另一端的readLine方法正常结束
            pw.write(str+"\r");
            pw.flush();
                //如果输入quit则退出聊天室
            if(str.equals("quit")) {
                break;
            }
        }
        socket.shutdownInput();
        socket.shutdownOutput();
        socket.close();
    }
}

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/9943c7399adc90fd85776f852e551110.html