• java实现UDP协议传输DatagramSocket


    摘自:http://blog.csdn.net/wintys/article/details/3525643/

    Server端。

    package com.topca.server;
    
    import java.io.IOException;
    import java.net.DatagramPacket;
    import java.net.DatagramSocket;
    import java.net.InetAddress;
    
    public 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();
        }
    }

    Client端

    package com.topca.clien;
    
    import java.io.IOException;
    import java.net.DatagramPacket;
    import java.net.DatagramSocket;
    import java.net.InetAddress;
    
    public class UDPClien {
         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("10.0.1.203");
                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();
            }
    }
    如果有使用请标明来源:http://www.cnblogs.com/duwenlei/
  • 相关阅读:
    ArcGIS 10与ArcEngine 10安装及破解
    SQL Server:触发器详解
    sql事务(Transaction)用法介绍及回滚实例
    Brief Tour of the Standard Library
    Python Scopes and Namespaces
    Saving structured data with json
    Packages
    “Compiled” Python files
    Executing modules as scripts
    More on Conditions
  • 原文地址:https://www.cnblogs.com/duwenlei/p/3937860.html
Copyright © 2020-2023  润新知