c#獲取本機在局域網(wǎng)ip地址的二種方法
更新時間:2014年01月20日 16:57:36 作者:
在項目中經(jīng)常要獲取用戶的上網(wǎng)的IP地址,如何獲取用戶的IP地址,方法很多,現(xiàn)在介紹以下2種
復(fù)制代碼 代碼如下:
/// <summary>
/// 獲取本機在局域網(wǎng)的IP地址
/// </summary>
/// <returns></returns>
private string GetLocalIPAddress()
{
System.Net.IPAddress[] addressList = Dns.GetHostEntry(Dns.GetHostName()).AddressList;
string strNativeIP = "";
string strServerIP = "";
if (addressList.Length > 1)
{
strNativeIP = addressList[0].ToString();
strServerIP = addressList[1].ToString();
}
else if(addressList.Length==1)
{
strServerIP = addressList[0].ToString();
}
return strServerIP;
}
另外一種就是抓取網(wǎng)頁中查詢到的上網(wǎng)地址的IP來實現(xiàn)的。實現(xiàn)如下:
復(fù)制代碼 代碼如下:
/// <summary>
/// 獲取本機的上網(wǎng)IP
/// </summary>
/// <returns></returns>
private string GetConnectNetAddress()
{
string strUrl = "http://www.ip138.com/ip2city.asp"; //獲得IP的網(wǎng)址
Uri uri = new Uri(strUrl);
WebRequest webreq = WebRequest.Create(uri);
Stream s = webreq.GetResponse().GetResponseStream();
StreamReader sr = new StreamReader(s, Encoding.Default);
string all = sr.ReadToEnd(); //讀取網(wǎng)站返回的數(shù)據(jù) 格式:您的IP地址是:[x.x.x.x]
int i = all.IndexOf("[") + 1;
string tempip = all.Substring(i, 15);
string ip = tempip.Replace("]", "").Replace(" ", "").Replace("<", "");
return ip;
}
相關(guān)文章
Unity UI或3D場景實現(xiàn)跟隨手機陀螺儀的晃動效果
這篇文章主要介紹了Unity UI或3D場景實現(xiàn)跟隨手機陀螺儀的晃動效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-11-11C++通過Callback向C#傳遞數(shù)據(jù)的方法
下面小編就為大家分享一篇C++通過Callback向C#傳遞數(shù)據(jù)的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01C#使用FileInfo和DirectoryInfo類來執(zhí)行文件和文件夾操作
System.IO.FileInfo?和?System.IO.DirectoryInfo?是C#中用于操作文件和文件夾的類,它們提供了許多有用的方法和屬性來管理文件和文件夾,這篇文章主要介紹了C#使用FileInfo和DirectoryInfo類來執(zhí)行文件和文件夾操作,需要的朋友可以參考下2023-08-08