zoukankan      html  css  js  c++  java
  • java UDP小程序

     1 package com.socket.udp;
     2 
     3 import java.io.ByteArrayInputStream;
     4 import java.io.ByteArrayOutputStream;
     5 import java.io.DataInputStream;
     6 import java.io.DataOutputStream;
     7 import java.io.IOException;
     8 import java.net.DatagramPacket;
     9 import java.net.DatagramSocket;
    10 import java.net.InetSocketAddress;
    11 import java.net.SocketException;
    12 
    13 import org.junit.Test;
    14 
    15 public class TestUDP {
    16     @Test
    17     public void testUDPServer(){
    18         try {
    19             byte[] buf = new byte[1024];
    20             DatagramPacket dp = new DatagramPacket(buf,buf.length); 
    21             DatagramSocket ds = new DatagramSocket(5678);
    22             while(true){
    23                 ds.receive(dp);//阻塞时方法
    24                 ByteArrayInputStream bais = new ByteArrayInputStream(buf);
    25                 DataInputStream dis = new DataInputStream(bais);
    26                 System.out.println(dis.readLong());
    27             }
    28         } catch (SocketException e) {
    29             e.printStackTrace();
    30         } catch (IOException e) {
    31             e.printStackTrace();
    32         }
    33     }
    34     
    35     @Test
    36     public void testUDPClient(){
    37         try {
    38             long n = 99999L;
    39             ByteArrayOutputStream baos = new ByteArrayOutputStream();
    40             DataOutputStream dos = new DataOutputStream(baos);
    41             dos.writeLong(n);
    42             byte[] buf = baos.toByteArray();
    43             DatagramPacket dp = new DatagramPacket(buf,buf.length,new InetSocketAddress("127.0.0.1",5678));
    44             DatagramSocket ds = new DatagramSocket(9999);
    45             ds.send(dp);
    46             ds.close();
    47         } catch (SocketException e) {
    48             e.printStackTrace();
    49         } catch (IOException e) {
    50             e.printStackTrace();
    51         }
    52     }
    53 }
  • 相关阅读:
    洛谷P1586 四方定理
    洛谷P3807 【模板】卢卡斯定理exgcd
    扩展中国剩余定理详解
    HDU 1573 X问题
    POJ 2891 Strange Way to Express Integers
    中国剩余定理详解
    java.lang.UnsupportedClassVersionError: Bad version number in .class file 解决方案
    MySQL对于有大量重复数据表的处理方法
    【一牛鸣】下周或触发新变盘9.16
    Django里面的RequestContext
  • 原文地址:https://www.cnblogs.com/cjunj/p/2755709.html
Copyright © 2011-2022 走看看