日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

获得本机IP地址

發布時間:2025/5/22 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 获得本机IP地址 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
代碼 package?test;

import?java.net.InetAddress;
import?java.net.NetworkInterface;
import?java.net.SocketException;
import?java.net.UnknownHostException;
import?java.util.Enumeration;

public?class?IPHelper?{

????
public?static?void?main(String[]?args)?throws?UnknownHostException,?SocketException?{
????????
//?只適用于Windows
????????InetAddress?inet?=?InetAddress.getLocalHost();
????????System.out.println(
"本機的IP為:"?+?inet.getHostAddress());

????????
//?根據網卡取本機配置的IP,適用于Windows和Linux
????????Enumeration?netInterfaces?=?NetworkInterface.getNetworkInterfaces();
????????InetAddress?ip?
=?null;
????????String?ipAddress?
=?"";
????????
while?(netInterfaces.hasMoreElements())?{
????????????NetworkInterface?ni?
=?(NetworkInterface)?netInterfaces.nextElement();
????????????
//?System.out.println("--------------"?+?ni.getDisplayName());
????????????Enumeration?inetAddress?=?ni.getInetAddresses();
????????????
while?(inetAddress?!=?null?&&?inetAddress.hasMoreElements())?{
????????????????Object?obj?
=?inetAddress.nextElement();
????????????????
if?(obj?!=?null)?{
????????????????????
//System.out.println(ni.getDisplayName());
????????????????????
//System.out.println(obj.getClass().getName());
????????????????????ip?=?(InetAddress)obj;
????????????????????
//System.out.println("本機的ip="?+?ip.getHostAddress());
????????????????????
//if?(!ip.isSiteLocalAddress()?&&?!ip.isLoopbackAddress()?&&?ip.getHostAddress().indexOf(":")?==?-1)?{
????????????????????
????????????????????
//?isSiteLocalAddress方法
????????????????????
//?當IP地址是地區本地地址(SiteLocalAddress)時返回true,否則返回false。IPv4的地址本地
????????????????????
//?地址分為三段:10.0.0.0?~?10.255.255.255、172.16.0.0?~?172.31.255.255、192.168.0.0
????????????????????
//?~?192.168.255.255。IPv6的地區本地地址的前12位是FEC,其他的位可以是任意取值,
????????????????????
//?如FED0::、FEF1::都是地區本地地址。

????????????????????
//?isLoopbackAddress方法
????????????????????
//?當IP地址是loopback地址時返回true,否則返回false。loopback地址就是代表本機的IP地址。
????????????????????
//?IPv4的loopback地址的范圍是127.0.0.0?~?127.255.255.255,也就是說,只要第一個字節是127,
????????????????????
//?就是lookback地址。如127.1.2.3、127.0.200.200都是loopback地址。IPv6的loopback地址是
????????????????????
//?0:0:0:0:0:0:0:1,也可以簡寫成::1。
????????????????????System.out.println(ip.getHostAddress());
????????????????????
if?(!ip.isLoopbackAddress()?&&?ip.getHostAddress().indexOf(":")?==?-1)?{
????????????????????????ipAddress?
=?ip.getHostAddress();
????????????????????????
break;
????????????????????}?
else?{
????????????????????????ip?
=?null;
????????????????????}
????????????????}
????????????}
????????}
????????System.out.println(
"本機的ip="?+?ipAddress);
????}

}

?

轉載于:https://www.cnblogs.com/angushine/archive/2010/08/18/1802861.html

總結

以上是生活随笔為你收集整理的获得本机IP地址的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。