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里面添加路径“.”,表示包含当前目录。

  • 相关阅读:
    Dubbo (开源分布式服务框架)
    Springboot+Jpa的使用
    springboot(十二):springboot如何测试打包部署
    Java NIO:IO与NIO的区别
    eclipse下搭建shell脚本编辑器--安装开发shell的eclipse插件shelled
    spring boot
    【微服务架构】SpringCloud组件和概念介绍
    java正则表达式
    java的反射机制原理
    nginx代理服务器
  • 原文地址:https://www.cnblogs.com/pied/p/3580290.html
Copyright © 2011-2022 走看看