TCPClient.java
import java.io.IOException; import java.io.OutputStream; import java.net.InetAddress; import java.net.Socket; import java.net.UnknownHostException; public class TCPClient { public static void main(String[] args) { InetAddress serverIP = null; Socket socket = null; OutputStream oStream = null; try { //客户端,获取IP地址 serverIP = InetAddress.getByName("127.0.0.1"); int port = 9999; //创建socket连接 socket = new Socket(serverIP, port); //发送消息IO流 oStream = socket.getOutputStream(); //getBytes()方法是得到一个操作系统默认的编码格式的字节数组。 oStream.write("hello".getBytes()); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { if(oStream!=null) { try { oStream.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } if (socket!=null){ try { socket.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } }ServerClient.java
import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import java.net.ServerSocket; import java.net.Socket; public class ServerClient { public static void main(String[] args) { ServerSocket serverSocket = null; Socket socket = null; InputStream is = null; ByteArrayOutputStream baos = null; try { //目标地址 serverSocket = new ServerSocket(9999); //等待客户端连接过来 socket = serverSocket.accept(); //读取客户端信息 is = socket.getInputStream(); //管道流 baos = new ByteArrayOutputStream(); byte[] buffer = new byte[1024]; int len; while((len=is.read(buffer))!=-1) { baos.write(buffer, 0, len); } System.out.println(baos.toString()); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { if(baos!=null) { try { baos.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } if(is!=null) { try { is.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } if(socket!=null) { try { socket.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } if(serverSocket!=null) { try { serverSocket.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } }
