Android获取本机局域网IP的方法
来源:互联网 发布:淘宝lolcdk是真的吗 编辑:程序博客网 时间:2024/06/02 15:44
直接贴代码,主要利用正则表达式匹配局域网ip
package com.rongyan.clienttest;import java.net.InetAddress;import java.net.NetworkInterface;import java.net.SocketException;import java.util.Enumeration;import java.util.regex.Matcher;import java.util.regex.Pattern;/** * Created by XRY on 2017/7/30. */public class NetWorkUtil { //匹配C类地址的IP public static final String regexCIp = "^192\\.168\\.(\\d{1}|[1-9]\\d|1\\d{2}|2[0-4]\\d|25\\d)\\.(\\d{1}|[1-9]\\d|1\\d{2}|2[0-4]\\d|25\\d)$"; //匹配A类地址 public static final String regexAIp = "^10\\.(\\d{1}|[1-9]\\d|1\\d{2}|2[0-4]\\d|25\\d)\\.(\\d{1}|[1-9]\\d|1\\d{2}|2[0-4]\\d|25\\d)\\.(\\d{1}|[1-9]\\d|1\\d{2}|2[0-4]\\d|25\\d)$"; //匹配B类地址 public static final String regexBIp = "^172\\.(1[6-9]|2\\d|3[0-1])\\.(\\d{1}|[1-9]\\d|1\\d{2}|2[0-4]\\d|25\\d)\\.(\\d{1}|[1-9]\\d|1\\d{2}|2[0-4]\\d|25\\d)$"; public static String getHostIp() { String hostIp; Pattern ip = Pattern.compile("(" + regexAIp + ")|" + "(" + regexBIp + ")|" + "(" + regexCIp + ")"); Enumeration<NetworkInterface> networkInterfaces = null; try { networkInterfaces = NetworkInterface.getNetworkInterfaces(); } catch (SocketException e) { e.printStackTrace(); } InetAddress address; while (networkInterfaces.hasMoreElements()) { NetworkInterface networkInterface = networkInterfaces.nextElement(); Enumeration<InetAddress> inetAddresses = networkInterface.getInetAddresses(); while (inetAddresses.hasMoreElements()) { address = inetAddresses.nextElement(); String hostAddress = address.getHostAddress(); Matcher matcher = ip.matcher(hostAddress); if (matcher.matches()) { hostIp = hostAddress; return hostIp; } } } return null; }}
阅读全文
0 0
- Android获取本机局域网IP的方法
- 获取局域网本机的ip地址
- 本机局域网IP获取
- C#获取本机局域网ip和公网ip的方法
- Java 获取本机局域网的外网IP
- VB.NET 获取本机在局域网内的IP
- 关于学习获取本机局域网之内的IP地址
- Java获取本机IP地址(对外的IP地址和局域网的IP地址)
- 获取本机IP的方法
- 获取本机IP地址的方法:
- MFC获取本机IP的方法
- Java获取本机ip的方法
- C++ 获取本机IP的方法
- C#获取本机局域网ip和公网ip
- C#获取本机局域网IP和公网IP
- VC--获取本机 局域网IP 和外网IP
- C#获取本机局域网ip和公网ip
- C#获取本机局域网ip和公网ip
- JS的逻辑思维练习
- TensorFlow学习——CIFAR-10(二)代码实现
- ios-drawrect方法解析
- Java集合类: Set、List、Map、Queue使用场景梳理
- BestCoder Round #2 解题报告
- Android获取本机局域网IP的方法
- Servlet的多线程和线程安全
- B
- Java设计模式 单列模式
- 回文串之栈
- Android自绘控件开发与性能优化实践——以录音波浪动画为例
- BZOJ 1146: [CTSC2008]网络管理Network 树链剖分 树状数组套主席树/线段树套平衡树
- jQuery选择器——基本过滤选择器
- spring