JAVA獲取本機IP和Mac地址

   在項目中,時常須要獲取本機的Ip或是Mac地址,進行身份和權限驗證,本文就是經過java代碼獲取ip和Mac。java

package com.svse.query;
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.net.UnknownHostException;數組

/***
* 獲取本機的Mac地址 (物理地址) 如:58-02-E3-58-4E-E5
* @author lenovo
* @date 2019年2月20日
* description:
*/
public class TestLocalMac {app


      private static void getLocalMac(InetAddress ia) throws SocketException {
         //獲取網卡,獲取地址
         byte[] mac = NetworkInterface.getByInetAddress(ia).getHardwareAddress();
      //System.out.println("mac數組長度:"+mac.length);
   StringBuffer sb = new StringBuffer("");
   for(int i=0; i<mac.length; i++) {
    if(i!=0) {
    sb.append("-");
        }
   //字節轉換爲整數
   int temp = mac[i]&0xff;
   String str = Integer.toHexString(temp);
   //System.out.println("每8位:"+str);
   if(str.length()==1) {
    sb.append("0"+str);
   }else {
    sb.append(str);
   }
    }
   System.out.println("本機MAC地址:"+sb.toString().toUpperCase());
}
public static void main(String[] args) throws UnknownHostException {

  //獲得IP,輸出PC-201309011313/122.206.73.83
  InetAddress ia = InetAddress.getLocalHost();
  String ip=ia.toString().split("/")[1];
  System.out.println(ia);
  System.out.println("IP:"+ip);
  try {
    getLocalMac(ia);
  } catch (SocketException e) {
    e.printStackTrace();
  }測試

 }spa

}.net

   測試結果blog

   

相關文章
相關標籤/搜索