基于TCP的Socket编程步骤:
1)服务器程序编写:
①调用ServerSocket(int port)创建一个服务器端套接字,并绑定到指定端口上;
②调用accept(),监听连接请求,如果客户端请求连接,则接受连接,返回通信套接字;
③调用Socket类的getOutputStream()和getInputStream获取输出流和输入流,
开始网络数据的发送和接收;
④最后关闭通信套接字。
2)客户端程序编写:
①调用Socket()创建一个流套接字,并连接到服务器端;
②调用Socket类的getOutputStream()和getInputStream获取输出流和输入流,
开始网络数据的发送和接收;
③最后关闭通信套接字。
代码部分:
Client:
Socket socket=null;
String host="127.0.0.1";
int port=9999;
InputStream in=null;
OutputStream out=null;
socket = new Socket(host, port);
System.out.println("连接到服务器--");
/*in=socket.getInputStream();*/
out=socket.getOutputStream();
out.write("errttttt".getBytes());
out.flush();
//最后记得关流
if(out!=null)out.close();
if(socket!=null)socket.close();
//if(in!=null)in.close();
Server:
ServerSocket server=null;
int port=9999;
InputStream in=null;
OutputStream out=null;
server=new ServerSocket(port);
System.out.println("服务器已经启动---");
Socket socket = server.accept();
System.out.println("客户端已经连接成功--");
in=socket.getInputStream();
byte[] b=new byte[1024];
int len = in.read(b);
System.out.write(b,0,len);
/*out=socket.getOutputStream();
out.write("NIhao".getBytes());*/
if(out!=null)out.close();
if(socket!=null)socket.close();
if(server!=null)server.close();