c#获取本机在局域网ip地址的二种方法

 更新时间:2014年01月20日 16:57:36   作者:  
在项目中经常要获取用户的上网的IP地址,如何获取用户的IP地址,方法很多,现在介绍以下2种

复制代码 代码如下:

/// <summary>
/// 获取本机在局域网的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;
}

另外一种就是抓取网页中查询到的上网地址的IP来实现的。实现如下:

复制代码 代码如下:

/// <summary>
/// 获取本机的上网IP
/// </summary>
/// <returns></returns>
private string GetConnectNetAddress()
{
    string strUrl = "http://www.ip138.com/ip2city.asp"; //获得IP的网址
    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(); //读取网站返回的数据 格式:您的IP地址是:[x.x.x.x]
    int i = all.IndexOf("[") + 1;
    string tempip = all.Substring(i, 15);
    string ip = tempip.Replace("]", "").Replace(" ", "").Replace("<", "");
    return ip;
}

相关文章

  • Asp.Net(C#)使用oleDbConnection 连接Excel的方法

    Asp.Net(C#)使用oleDbConnection 连接Excel的方法

    ADO.NET采用不同的Connection对象连接数据库。这篇文章主要介绍了Asp.Net(C#)使用oleDbConnection 连接Excel的方法,非常具有实用价值,需要的朋友可以参考下
    2018-11-11
  • C#把数组中的某个元素取出来放到第一个位置的实现方法

    C#把数组中的某个元素取出来放到第一个位置的实现方法

    这篇文章主要介绍了C#把数组中的某个元素取出来放到第一个位置的实现方法,涉及C#针对数组的常见操作技巧,非常具有实用价值,需要的朋友可以参考下
    2014-12-12
  • C# 将程序添加开机启动的三种方式

    C# 将程序添加开机启动的三种方式

    本文主要介绍了C# 将程序添加开机启动的三种方式,主要包含开始菜单启动,注册表启动项和Windows 计划任务这三种方法,具有一定的参考价值,感兴趣的可以了解一下
    2024-01-01
  • C#中数组、ArrayList和List三者的区别详解

    C#中数组、ArrayList和List三者的区别详解

    这篇文章主要介绍了C#中数组、ArrayList和List三者的区别详解,对于三者之间的区别想要了解的可以进来了解一下。
    2016-12-12
  • C#线程中弹窗的制作方法

    C#线程中弹窗的制作方法

    这篇文章主要为大家详细介绍了C#线程中弹窗的制作方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • C#读取xml节点数据方法小结

    C#读取xml节点数据方法小结

    这篇文章主要介绍了C#读取xml节点数据的方法,实例总结了C#针对XML文件节点操作的相关技巧,需要的朋友可以参考下
    2015-06-06
  • C#的SQL操作类实例

    C#的SQL操作类实例

    这篇文章主要介绍了C#的SQL操作类实例,涉及到针对数据库的常用操作,在进行C#数据库程序设计中非常具有实用价值,需要的朋友可以参考下
    2014-10-10
  • 一文详解C#中数组、链表、Hash的优缺点

    一文详解C#中数组、链表、Hash的优缺点

    在 C# 中,数组(Array)、链表(LinkedList)和哈希表(Hash)是常用的数据结构,每种都有其自身的优缺点,本文将通过代码示例给大家详细的介绍一下,需要的朋友可以参考下
    2024-02-02
  • C#中接口的显式实现与隐式实现及其相关应用案例详解

    C#中接口的显式实现与隐式实现及其相关应用案例详解

    最近在学习演化一款游戏项目框架时候,框架作者巧妙使用接口中方法的显式实现来变相对接口中方法进行“密封”,增加实现接口的类访问方法的“成本”,这篇文章主要介绍了C#中接口的显式实现与隐式实现及其相关应用案例,需要的朋友可以参考下
    2024-05-05
  • c# 实现语音合成

    c# 实现语音合成

    这篇文章主要介绍了c# 实现语音合成的方法,帮助大家更好的理解和使用c#,感兴趣的朋友可以了解下
    2020-12-12

最新评论