实用代码-C#之IP地址和整数的互转
源码
1 [StructLayout(LayoutKind.Explicit)] 2 public struct IP 3 { 4 public IP(UInt32 value) 5 { 6 this._text1 = 0; 7 this._text2 = 0; 8 this._text3 = 0; 9 this._text4 = 0; 10 this._value = value; 11 } 12 public IP(Byte text1, Byte text2, Byte text3, Byte text4) 13 { 14 this._value = 0; 15 this._text1 = text1; 16 this._text2 = text2; 17 this._text3 = text3; 18 this._text4 = text4; 19 } 20 [FieldOffset(0)] 21 private UInt32 _value; 22 [FieldOffset(0)] 23 private Byte _text1; 24 [FieldOffset(1)] 25 private Byte _text2; 26 [FieldOffset(2)] 27 private Byte _text3; 28 [FieldOffset(3)] 29 private Byte _text4; 30 31 public UInt32 Value 32 { 33 get { return this._value; } 34 set { this._value = value; } 35 } 36 public Byte Text1 37 { 38 get { return this._text1; } 39 set { this._text1 = value; } 40 } 41 public Byte Text2 42 { 43 get { return this._text2; } 44 set { this._text2 = value; } 45 } 46 public Byte Text3 47 { 48 get { return this._text3; } 49 set { this._text3 = value; } 50 } 51 public Byte Text4 52 { 53 get { return this._text4; } 54 set { this._text4 = value; } 55 } 56 57 public override string ToString() 58 { 59 return String.Format("{0}.{1}.{2}.{3}", this._text1.ToString(), this._text2.ToString(), 60 this._text3.ToString(), this._text4.ToString()); 61 } 62 63 public static implicit operator IP(UInt32 value) 64 { 65 return new IP(value); 66 } 67 public static explicit operator UInt32(IP ip) 68 { 69 return ip._value; 70 } 71 }
测试
1 class Program 2 { 3 static void Main(string[] args) 4 { 5 IP ip = new IP(192,168,1,1); 6 Console.WriteLine(ip); 7 UInt32 value = (UInt32)ip; 8 Console.WriteLine(value); 9 Console.WriteLine(ip.Value); 10 IP ip2 = (IP)(1234567); 11 Console.WriteLine(ip2); 12 13 Console.ReadKey(); 14 } 15 }
实用代码-C#之IP地址和整数的互转相关推荐
- IP 地址与整数之间的互相转换详解
IP 地址的"构造"是由 32 位二进制数组成的. IP地址转换为整数的代码: 或者: 优化如下: 分析:IP 地址的每段可以看成是一个 0-255 的整数,把每段拆分成一个二进制 ...
- C# IP地址和整数之间的转换,IP地址和数字ip地址的转换
IP地址与整数之间的转换 1.IP地址转换为整数 原理:IP地址每段可以看成是8位无符号整数即0-255,把每段拆分成一个二进制形式组合起来,然后把这个二进制数转变成一个无符号的32位整数. 举例:一 ...
- Java实现点分十进制IP地址转换为整数
package ipaddress; //一.将IP地址转换为整数(IPV4,点分十进制)的关键技术点如下: //1.通过String的indexOf方法找出字符串IP地址中的"." ...
- 将IP地址转换为整数--将32位的二进制转换为十进制
object Test01_IP地址计算 {def main(args: Array[String]): Unit = {val ip:String = "1.0.3.255"va ...
- php获取计算机ip代码,PHP 获取ip地址代码汇总
代码一: function getip() { static $ip = ''; $ip = $_SERVER['REMOTE_ADDR']; if(isset($_SERVER['HTTP_CDN_ ...
- android 设置静态ip,Android下用代码设置静态IP地址的方法(完美支持Android2.X,Android3.X,Android4.X)...
有一个项目,要控制设备wifi连接,而且要使用静态ip,上网查找了下,基本都是Android2.X下面的方法,即使用Settings进行设置,但是这种设置方法对于Android3.X以上设备是无效的, ...
- VC中字符串形式ip地址和整数形式ip地址转换
字符串转整数 int dwAddr = inet_addr("127.0.0.1"); 整数转字符串 struct in_addr inAddr;inAddr.s_addr = d ...
- 面试题:请用代码实现ip地址与int之间互换?
来自:Java面试那些事儿 面试官:Ipv4地址可以转为Long类型的数字知道吧?你写一下这个转换的代码. 对计算机基础逐渐模糊的小黄一脸懵逼,毕竟工作中很少会用到,只记得ip地址和整数是可以相互转换 ...
- android 整数与ip地址的转换
今天,简单讲讲android里如何把整数与ip地址进行转换. 这个很简单,在网上查找资料就找到了.这里记录一下. 1.IP地址转换为整数 将IP地址转化成整数的方法如下: 1.通过Strin ...
最新文章
- 3dcaptcha php,验证simple-php-captcha()输入
- strtok()思考
- 5 步助你成为一名优秀的 Docker 代码贡献者
- 【spring boot】使用RestTemplate调用微信code2Session接口
- python多进程与多线程实验
- Infinite Tree
- mysql手机号11_我用不小心用 mysql 的int(11) 存了 手机号,数据都有问题,有办法恢复么?...
- webassembly类型_WebAssembly 现状与实战
- 栈2——局部变量要初始化的原因
- 并查集--Java实现
- PHP学习笔记四(超级全局变量 和 魔术常量)
- Java Web应用开发实用教程_Java Web应用开发实用教程
- oracle 12952错误,故障码P1295
- Agisoft Photoscan/Mateshape 相机参数XML解读
- 涨姿势!一文了解深度学习中的注意力机制
- 速途在线沙龙11期:王通夫唯首次聚首共话SEO
- [转载]什么是打新股? 打新股需要多少成本?打新股存在风险吗?
- 推广、策划、运营都在用这些工具,不知道就太out了
- C++笔记:输入输出、变量、变量加减乘除
- STM32笔记之PWM输出,调节频率及占空比