`
xp9802
  • 浏览: 1214333 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

GetMACAddress 在java查询中获取 MACA 地址

 
阅读更多

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

 

/**

 * 在java查询中获取  MACA 地址

 */

public class GetMACAddress {

 

public static void main(String[] args) {

System.out.println(getWindowsMACAddress());

System.out.println(getUnixMACAddress());

}

 

/** 

* 获取widnows网卡的mac地址

* @return mac地址 

*/

public static String getWindowsMACAddress() {

String mac = null;

BufferedReader bufferedReader = null;

Process process = null;

try {

process = Runtime.getRuntime().exec("ipconfig /all");// windows下的命令,显示信息中包含有mac地址信息  

bufferedReader = new BufferedReader(new InputStreamReader(

process.getInputStream()));

String line = null;

int index = -1;

while ((line = bufferedReader.readLine()) != null) {

index = line.toLowerCase().indexOf("physical address");// 寻找标示字符串[physical address]  

if (index >= 0) {

index = line.indexOf(":");// 寻找":"的位置  

if (index >= 0) {

mac = line.substring(index + 1).trim();//  取出mac地址并去除2边空格  

}

break;

}

}

} catch (IOException e) {

e.printStackTrace();

} finally {

try {

if (bufferedReader != null) {

bufferedReader.close();

}

} catch (IOException e1) {

e1.printStackTrace();

}

bufferedReader = null;

process = null;

}

 

return mac;

}

 

/** 

* 获取unix网卡的mac地址

* 非windows的系统默认调用本方法获取.如果有特殊系统请继续扩充新的取mac地址方法. 

* @return mac地址 

*/

public static String getUnixMACAddress() {

String mac = null;

BufferedReader bufferedReader = null;

Process process = null;

try {

process = Runtime.getRuntime().exec("ifconfig eth0");// linux下的命令,一般取eth0作为本地主网卡 显示信息中包含有mac地址信息  

bufferedReader = new BufferedReader(new InputStreamReader(

process.getInputStream()));

String line = null;

int index = -1;

while ((line = bufferedReader.readLine()) != null) {

index = line.toLowerCase().indexOf("hwaddr");// 寻找标示字符串[hwaddr]  

if (index >= 0) {// 找到了  

mac = line.substring(index + "hwaddr".length() + 1).trim();//  取出mac地址并去除2边空格  

break;

}

}

} catch (IOException e) {

e.printStackTrace();

} finally {

try {

if (bufferedReader != null) {

bufferedReader.close();

}

} catch (IOException e1) {

e1.printStackTrace();

}

bufferedReader = null;

process = null;

}

 

return mac;

}

}

 

分享到:
评论

相关推荐

    java 获取客户端ip mac地址

    在Java Web开发中,有时我们需要获取客户端的IP地址甚至是MAC地址,以便进行安全验证、用户行为追踪等操作。本文将详细介绍如何通过Java来实现这一功能。 #### 一、获取客户端 IP 地址 获取客户端的IP地址通常在...

    java通过ip获取mac地址源代码.rar

    在Java编程语言中,获取一个特定IP地址对应的MAC(Media Access Control)地址是一项常见的网络编程任务。MAC地址是网络设备在网络层的物理地址,用于标识网络接口控制器(NIC)。在局域网(LAN)中,MAC地址是唯一...

    Java中获取IP地址,主机名称,网卡地址

    在 Java 中,我们可以使用 InetAddress 类的 getLocalHost() 方法来获取本地主机的 IP 地址。这个方法将返回一个 InetAddress 对象,其中包含了主机的 IP 地址。 ```java InetAddress myIPaddress = InetAddress....

    java获取客户端ip及mac地址

    ### Java 获取客户端 IP 地址 在 Web 开发中,获取客户端 IP 地址是一项非常重要的功能,尤其是在需要记录用户活动、实现地理位置定位...以上就是关于如何在 Java 中获取客户端 IP 地址及 MAC 地址的相关知识点介绍。

    JAVA得到网卡物理地址(windows和Linux)

    在 Java 中获取网卡物理地址是一项常见的需求,特别是在开发网络相关的应用程序时。网卡物理地址,也称为 MAC 地址,是一个唯一的识别码,用来标识网络设备。今天,我们将讨论如何使用 Java 获取网卡物理地址在 ...

    如何使用Java代码获取Android移动终端Mac地址.zip

    以下将详细介绍如何使用Java代码在Android中获取Mac地址。 1. **获取Mac地址的基础概念** - **Mac地址**:Media Access Control (MAC) 地址是一个48位的二进制数字,通常表示为12个16进制数,例如`00:11:22:33:44:...

    用java实现获取MAC地址的方法

    ### 使用Java实现获取MAC地址的方法 #### 背景与目的 在计算机网络管理或安全领域,有时需要获取远程主机的MAC地址来进行设备识别或跟踪。本文将介绍一种使用Java编程语言来实现获取本地或远程计算机MAC地址的方法...

    Java/JSP获得客户端网卡MAC地址的三种方法解析

    本文将深入解析在Java/JSP环境中获取客户端网卡MAC地址的三种常见方法,旨在为开发者提供全面而深入的理解。 ### 方法一:通过Java NIO(非阻塞I/O)库 Java NIO库提供了访问底层网络接口的能力,从而可以获取包括...

    java获取网卡MAC地址.rar

    在Java编程中,获取计算机硬件信息是常见的需求之一,其中之一就是获取网卡(Network Interface Card,简称NIC)的物理地址,也就是MAC地址。MAC地址是一个唯一标识网络接口的硬件地址,通常由六组两进制数字组成,...

    怎么在JAVA中获取网络连接详细信息

    在Java中可以通过执行操作系统命令并解析结果来获取MAC地址。 ```java public static String getMACAddress() { String address = ""; String os = System.getProperty("os.name"); if (os != null && os....

    java获取IP地址

    在Java编程中,获取IP地址和MAC地址是网络通信中常见的需求。IP地址标识了网络上的唯一设备,而MAC地址则是物理网络接口的唯一标识。以下是对标题和描述中涉及的知识点的详细解释: 1. **获取客户端IP地址**: - ...

    java获取mac地址

    在Java编程中,获取MAC(Media Access Control)地址是一项常见的任务,尤其是在需要识别网络接口或设备身份的场景下。MAC地址是一个物理地址,通常用于标识网络上的硬件设备。本文将详细介绍如何在Java中获取MAC...

    使用JAVA获取客户端MAC地址.pdf

    在Java编程环境中,获取客户端的MAC(Media Access Control)地址是一项常见的需求,特别是在网络通信或者设备识别等场景中。MAC地址是硬件级别的唯一标识符,它对应于网络接口控制器(NIC),在网络通信中用于标识...

    android jni获取 Mac地址

    在Android系统中,由于安全和隐私考虑,直接通过Java API获取MAC地址的权限受到了限制。因此,开发者有时需要通过JNI来绕过这些限制,直接访问底层系统接口。 首先,我们需要创建一个JNI函数,这个函数将在C/C++...

    使用ARP协议获取IP地址和MAC地址之间的对应关系-GetMACAddress.zip

    使用ARP协议获取IP地址和MAC地址之间的对应关系-GetMACAddress

    Android获取手机ip地址及mac地址

    在这段代码中,首先通过`context`获取到`WifiManager`实例,然后调用其`getConnectionInfo()`方法得到当前连接的`WifiInfo`对象,最后通过`getMacAddress()`方法即可获取到设备的MAC地址。 ### 二、获取IP地址 IP...

    java拿取本机正在使用的ip及本机mac地址

    在Java编程环境中,获取本机的IP地址和MAC地址是一项常见的需求,特别是在网络通信和设备识别的场景下。本文将详细讲解如何通过Java代码来获取本机正在使用的IP地址(包括IPv4和IPv6)以及MAC地址,并排除虚拟机的IP...

    PB获取网卡MAC地址

    在PowerBuilder(PB)这种强大的客户端/服务器应用程序开发环境中,有时需要获取本地计算机的MAC地址,例如用于设备绑定、身份验证或网络监控等场景。"PB获取网卡MAC地址"的程序就是为了实现这一功能。 首先,我们...

    Java获取mac地址的方法

    在Java编程中,获取MAC(Media Access Control)地址是一个常见的需求,特别是在网络通信或者设备识别的场景中。MAC地址是网络设备如网卡的物理地址,通常是一个全球唯一的6字节十六进制数。以下将详细介绍如何在...

    Android获取Mac地址

    在Android系统中,获取设备的Mac地址是一项常见的需求,特别是在设备标识、网络连接管理和蓝牙通信等场景下。然而,由于隐私保护政策的变化,Android对于获取Mac地址的方式进行了限制,使得这个过程比以前复杂了一些...

Global site tag (gtag.js) - Google Analytics