zoukankan      html  css  js  c++  java
  • java写的小脚本,用来受mDNS消息

    太ugly了,但是可以工作,抓了包下来,用前面DNS message structure做了下比较。

    代码如下:

    import java.net.DatagramPacket;
    import java.net.InetAddress;
    import java.net.MulticastSocket;
    
    public class Receiver {
        private static final String TAG = null;
        private static final String Log = null;
        private String HostName;
        private static String HostIP; 
      private static int count = 4;
    
        public static void main(String[] args) throws Exception {
            InetAddress group = InetAddress.getByName("224.0.0.251");
            MulticastSocket s = new MulticastSocket(5353);
            byte[] arb = new byte[512];
            s.joinGroup(group);    
    
            while (count-- > 0) {
                DatagramPacket datagramPacket = new DatagramPacket(arb, arb.length);
                s.receive(datagramPacket);
                HostIP = datagramPacket.getAddress().getHostName();
                System.out.println(HostIP);
                for (int i = 0; i < arb.length; i++) {
                    if (arb[i] > 0) {
                        System.out.printf("data[%4d] = 0x%02x (%c),
    ",i,arb[i],arb[i]);
                        } else {
                        System.out.printf("data[%4d] = 0x%02x,
    ",i,arb[i]);
                    }   
                }
            }
        }
    }

    好吧好吧,我是第一次考虑怎么在cmd下运行java 程序。

    首先,需要有jdk,需要用jdk进行编译:javac Receiver.java

    ok,此时会有个名为Receiver.class的文件生成。

    然后就可以run了:java Receiver

    注意,上面没有.class哦。

    另外,在这里通常会遇到的问题有:

    1、找不到javac或者java,此时需要设置系统的环境变量,让命令行能找得到相应bin文件。

    2、编译提示找不到库之类,需要把jdk的库给添加到classpath里面去。

    3、运行时提示找不到类,除了上一条,你还需要在classpath里面添加路径“.”,表示包含当前目录。

  • 相关阅读:
    段落排版--对齐
    1055. The World's Richest (25)
    1054. The Dominant Color (20)
    (八十一)利用系统自带App来实现导航
    (八十)MapKit放置系统默认大头针和自定义大头针
    (七十九)MapKit的基本使用
    1052. Linked List Sorting (25)
    (七十八)使用第三方框架INTULocationManager实现定位
    (七十七)地理编码与反地理编码
    1051. Pop Sequence (25)
  • 原文地址:https://www.cnblogs.com/pied/p/3580290.html
Copyright © 2011-2022 走看看