TCP编程2: 客户端给服务器端发信息,服务器端将信息打印到控制

import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.net.InetAddress;import java.net.ServerSocket;import java.net.Socket;import java.net.UnknownHostException;import org.junit.Test;/** TCP编程例二:* 客户端给服务器端发信息,服务器端将信息打印到控制台上,,同时发送"已收到信息"给客户端*/public class TestTCP2 {/** 客户端*/@Testpublic void client() {Socket socket = null;OutputStream os = null;InputStream is = null;try {socket = new Socket(InetAddress.getByName("127.0.0.1"), 9898);os = socket.getOutputStream();String str = "我是客户端,请接收。";os.write(str.getBytes());//shutdownOutput():显示的告诉服务器端我已经输出完毕socket.shutdownOutput();is = socket.getInputStream();byte[] b = new byte[100];int len;while ((len = is.read(b)) != -1) {str = new String(b, 0, len);System.out.println(str);}} catch (UnknownHostException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} finally {if(is != null){try {is.close();} catch (IOException e) {e.printStackTrace();}}if (os != null) {try {os.close();} catch (IOException e) {e.printStackTrace();}}if (socket != null) {try {socket.close();} catch (IOException e) {e.printStackTrace();}}}}/** 服务器端*/@Testpublic void server() {ServerSocket ss = null;Socket socket = null;InputStream is = null;OutputStream os = null;try {ss = new ServerSocket(9898);socket = ss.accept();is = socket.getInputStream();byte[] b = new byte[100];int len;while ((len = is.read(b)) != -1) {String str = new String(b, 0, len);System.out.println(str);}os = socket.getOutputStream();os.write("收到信息。".getBytes());//这边也显示的告诉客户端,我输出完毕socket.shutdownOutput();} catch (IOException e) {e.printStackTrace();} finally {if (os != null) {try {os.close();} catch (IOException e) {e.printStackTrace();}}if (is != null) {try {is.close();} catch (IOException e) {e.printStackTrace();}}if (socket != null) {try {socket.close();} catch (IOException e) {e.printStackTrace();}}if (ss != null) {try {ss.close();} catch (IOException e) {e.printStackTrace();}}}}}

启程了,人的智慧才得以发挥。

TCP编程2: 客户端给服务器端发信息,服务器端将信息打印到控制

相关文章:

你感兴趣的文章:

标签云: