1. /// <summary>
  2. /// IP地址转化
  3. /// </summary>
  4. /// <param name="ipaddr">整型的IP地址</param>
  5. /// <returns>字符串的IP地址</returns>
  6. private string UintIPToStringIP(uint ipaddr)
  7. {
  8. string hexStr = ipaddr.ToString("X8");
  9. int ip1 = Convert.ToInt32(hexStr.Substring(, ), );
  10. int ip2 = Convert.ToInt32(hexStr.Substring(, ), );
  11. int ip3 = Convert.ToInt32(hexStr.Substring(, ), );
  12. int ip4 = Convert.ToInt32(hexStr.Substring(, ), );
  13. return ip4 + "." + ip3 + "." + ip2 + "." + ip1;
  14. }
  15.  
  16. /// <summary>
  17. /// IP地址转化
  18. /// </summary>
  19. /// <param name="ipaddr">字符串的IP地址</param>
  20. /// <returns>整型的IP地址</returns>
  21. private uint StringIPToUintIP(string ipaddr)
  22. {
  23. string[] ips = ipaddr.Split('.');
  24. return Convert.ToUInt32(ips[]) * * * + Convert.ToUInt32(ips[]) * * + Convert.ToUInt32(ips[]) * + Convert.ToUInt32(ips[]);
  25. }
  26.  
  27. /// <summary>
  28. /// 获取本机IP地址
  29. /// </summary>
  30. /// <returns></returns>
  31. private string GetLocalIPAddress()
  32. {
  33. string resultIP = string.Empty;
  34. System.Net.IPAddress[] ips = System.Net.Dns.GetHostEntry(System.Net.Dns.GetHostName()).AddressList;
  35. foreach (System.Net.IPAddress ip in ips)
  36. {
  37. if (IsCorrentIP(ip.ToString()))
  38. {
  39. resultIP = ip.ToString();
  40. break;
  41. }
  42. }
  43. return resultIP;
  44. }
  45.  
  46. /// <summary>
  47. /// 验证IP地址是否有效
  48. /// </summary>
  49. /// <param name="ip"></param>
  50. /// <returns></returns>
  51. private bool IsCorrentIP(string ip)
  52. {
  53. string pattrn = @"(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])";
  54. if (System.Text.RegularExpressions.Regex.IsMatch(ip, pattrn))
  55. {
  56. return true;
  57. }
  58. else
  59. {
  60. return false;
  61. }
  62. }

C# 获取本机IP地址以及转换字符串的更多相关文章

  1. 获取本机IP地址

    这里有两种方法: //获取本机IP - (NSString *)localIPAddress { NSString *localIP = nil; struct ifaddrs *addrs; ) { ...

  2. 关于是用dotnet获取本机IP地址+计算机名的方法

    印象中在maxscript帮助文档里找到过方法,但是当时没记下来.只能通过dotnet实现了. 如果电脑有无线网卡和本地连接,可能会出现乱码,也问了写dotnet的朋友,提供了一些思路,不过最终还是使 ...

  3. Windows下获取本机IP地址方法介绍

    Windows下获取本机IP地址方法介绍 if((hostinfo = gethostbyname(name)) != NULL) { #if 1 ; printf("IP COUNT: % ...

  4. java获取本机IP地址

    转载自:http://blog.csdn.net/thunder09/article/details/5360251 在网上找了几个用java获取本机IP地址的代码,发现都少都有些不完美,自己整理了一 ...

  5. QT5下获取本机IP地址、计算机名、网络连接名、MAC地址、子网掩码、广播地址

    获取主机名称 /* * 名称:get_localmachine_name * 功能:获取本机机器名称 * 参数:no * 返回:QString */ QString CafesClient::get_ ...

  6. 详谈再论JAVA获取本机IP地址

    首先,你如果搜索“JAVA获取本机IP地址”,基本上搜到的资料全是无用的.比如这篇:http://www.cnblogs.com/zrui-xyu/p/5039551.html实际上的代码在复杂环境下 ...

  7. Linux下获取本机IP地址的代码

    Linux下获取本机IP地址的代码,返回值即为互联网标准点分格式的字符串. #define ETH_NAME "eth0" //获得本机IP地址 char* GetLocalAdd ...

  8. shell中获取本机ip地址

    shell中获取本机ip地址 方法一: /sbin/ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr ...

  9. python获取本机IP地址

    方法一 通常使用socket.gethostname()方法即可获取本机IP地址,但有时候获取不到(比如没有正确设置主机名称) import socket #获取计算机名称hostname=socke ...

随机推荐

  1. .NET中的CSV导入导出(实例)

    导入代码,从csv文件得到datatable         /// <summary>        /// Get Data From Csv File         /// (Th ...

  2. WeixinJSBridge:微信浏览器内置JavaScript 对象

    微信公众平台开始支持前端网页,大家可能看到很多网页上都有分享到朋友圈,关注微信等按钮,点击它们都会弹出一个窗口让你分享和关注,这个是怎么实现的呢?今天就给大家讲解下如何在微信公众平台前端网页上添加分享 ...

  3. [AngularJS系列(4)] 那伤不起的provider们啊~ (Provider, Value, Constant, Service, Factory, Decorator)(转)

    用AngularJS做项目,但凡用过什么service啊,factory啊,provider啊,开始的时候晕没晕?!晕没晕?!感觉干的事儿都差不多啊,到底用哪个啊?!别告诉我你们几个就是为了跟我炫耀兄 ...

  4. Git使用过程

    Git-------目前世界上最先进的分布式版本控制系统(没有之一) 什么是版本控制系统? 说简单点,就是一个文件,对其增加.删除.修改都可以被记录下来,不仅自己可以修改,其他人也可以进行修改 每次对 ...

  5. Android服务之AIDL

    在android开发过程中,为了让其他的应用程序,也可以访问本应用程序的服务,android系统采用远程过程调用来实现.android通过接口来公开定义的服务.我们将能够夸进程访问的服务成为AIDL服 ...

  6. Java生成登陆时使用的图片验证码

    package com.ws.frame.utils; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; i ...

  7. 一个SQL 建表格式

    CREATE TABLE [dbo].[SysSample]([Id] [varchar](50) NOT NULL,[Name] [varchar](50) NULL,[Age] [int] NUL ...

  8. C++程序设计实践指导1.3求任意整数降序数改写要求实现

    改写要求1:动态生成单链表存储 #include <cstdlib> #include <iostream> using namespace std; struct LinkN ...

  9. C#生成缩略图的方法

    1.需要添加应用System.Drawing.dll 2.命名空间 using System.IO; using System.Drawing; using System.Drawing.Imagin ...

  10. [转]MFC 加载其他的应用程序

    三个SDK函数 winexec, shellexecute,createprocess可以使用.WinExec 最简单,两个参数,前一个指定路径,后一个指定显示方式.后一个参数值得说一下,比如泥用 S ...