关于C#用代码获取IP的问题
我用这行代码获取IP
if (Dns.GetHostEntry(Dns.GetHostName()).AddressList.Length > 0)
{
text_IP.Text = Dns.GetHostEntry(Dns.GetHostName()).AddressList[1].ToString();
}
在不联网的时候是这样的可以获取的
但是联网之后是这样的获取出这个fe80::1c90:1322:53ef:93c9%15
------解决方案--------------------得到的是IPv6格式的 怎么转换成ipv4的..我也不懂--
------解决方案-------------------- public string GetIP()
{
string hostNameOrIP=Dns.GetHostName();
IPHostEntry ipEntry = Dns.GetHostEntry(hostNameOrIP);
string sIP = string.Empty;
if (ipEntry.AddressList.Length > 0)
{
foreach (IPAddress addr in ipEntry.AddressList)
{
if (addr.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork)
{
sIP = addr.ToString();
break;
}
}
}
return sIP;
}
我是这样写的,希望对你有帮助.