300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > Java网络编程:TCP实现聊天

Java网络编程:TCP实现聊天

时间:2021-09-17 13:45:17

相关推荐

Java网络编程:TCP实现聊天

客户端

package t;import java.io.IOException;import java.io.OutputStream;import .InetAddress;import .Socket;/*** client客户端*/public class TcpClient1 {public static void main(String[] args) {Socket socket = null;OutputStream os= null;//1知道服务器的地址try {InetAddress severIP = InetAddress.getByName("127.0.0.1");int port = 9999;//2创建socket链接socket = new Socket(severIP, port);//3发送消息io流os =socket.getOutputStream();os.write("你好,11欢迎学习网络编程".getBytes());}catch (Exception e) {e.printStackTrace();}finally {if (os!=null){try {os.close();} catch (IOException e) {e.printStackTrace();}}if(socket!=null){try {socket.close();} catch (IOException e) {e.printStackTrace();}}}}}

服务端

package t;import java.io.ByteArrayOutputStream;import java.io.IOException;import java.io.InputStream;import .ServerSocket;import .Socket;/*** sever服务端*/public class TcpSever1 {public static void main(String[] args) {ServerSocket serverSocket1 = null;Socket socket = null;InputStream is = null;ByteArrayOutputStream baos = null;try {//我得有1个地址serverSocket1 = new ServerSocket(9999);while (true){//2等待客户端连接socket = serverSocket1.accept();//3读取客户端消息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 (Exception e) {e.printStackTrace();}finally {//关闭资源,先开后关,注意捕获异常,标准写法if(baos!=null) {try {baos.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(serverSocket1!=null){try {serverSocket1.close();} catch (IOException e) {e.printStackTrace();}}}}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。