這個其實很簡單,獲取內網IP的話,直接使用InetAddress這個包就行,獲取外網IP的話,需要訪問一個網頁,獲取網頁內容,然后通過正則表達式匹配出IP地址就行,下面我簡單介紹一下實現過程,實驗環境win10+jdk1.8+eclipse,主要內容如下:
獲取內網IP
1.這里直接導入InetAddress這個包,然后調用getLocalHost函數就能實現,代碼如下,非常簡單,也就2行:
2.點擊運行這個程序,就會打印出當前的內網IP,效果如下:
獲取外網IP
1.這里需要先訪問一個網頁http://txt.go.sohu.com/ip/soip,這個網頁會顯示出當前訪問用戶的外網IP地址,如下,后面的代碼中也就是通過正則表達式匹配這地址:
2.代碼如下,基本流程就是根據url打開網頁,獲取網頁內容,然后通過正則表達式匹配出IP地址就行,如下,代碼量比較多,但是很好理解,不難:
點擊運行這個程序,就會打印出本地外網IP地址,如下:
至此,我們就完成了利用Java來獲取本地內網IP和外網IP。總的來說,整個過程很簡單,思路也比較清晰,只要你熟悉一下相關代碼,很快就能掌握的,網上也有相關教程和資料,感興趣的話,可以搜一下,希望以上分享的內容能對你有所幫助吧,也歡迎大家評論、留言。