170411java Socket通信的简单例子(UDP)
Posted 目标奔雷手
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了170411java Socket通信的简单例子(UDP)相关的知识,希望对你有一定的参考价值。
服务端代码:
package com.bobohe.socket; import java.io.*; import java.net.*; class UDPServer { public static void main(String[] args) throws IOException { DatagramSocket server = new DatagramSocket(5050); byte[] recvBuf = new byte[100]; DatagramPacket recvPacket = new DatagramPacket(recvBuf, recvBuf.length); server.receive(recvPacket); String recvStr = new String(recvPacket.getData(), 0, recvPacket.getLength()); System.out.println("Hello World!" + recvStr); int port = recvPacket.getPort(); InetAddress addr = recvPacket.getAddress(); String sendStr = "Hello ! I‘m Server"; byte[] sendBuf; sendBuf = sendStr.getBytes(); DatagramPacket sendPacket = new DatagramPacket(sendBuf, sendBuf.length, addr, port); server.send(sendPacket); server.close(); } }
客户端代码:
package com.bobohe.socket; import java.io.*; import java.net.*; class UDPClient{ public static void main(String[] args)throws IOException{ DatagramSocket client = new DatagramSocket(); String sendStr = "Hello! I‘m Client"; byte[] sendBuf; sendBuf = sendStr.getBytes(); InetAddress addr = InetAddress.getByName("127.0.0.1"); int port = 5050; DatagramPacket sendPacket = new DatagramPacket(sendBuf ,sendBuf.length , addr , port); //发送数据 client.send(sendPacket); byte[] recvBuf = new byte[100]; DatagramPacket recvPacket = new DatagramPacket(recvBuf , recvBuf.length); //接收数据 client.receive(recvPacket); String recvStr = new String(recvPacket.getData() , 0 ,recvPacket.getLength()); System.out.println("收到:" + recvStr); client.close(); } }
以上是关于170411java Socket通信的简单例子(UDP)的主要内容,如果未能解决你的问题,请参考以下文章