在应用程序开发中,涉及到IP地址的存储,大部分开发人员都将其存为String(或文本类型)。能否将固定格式为m.n.x.y的IP地址转换成 Long型的数字呢?答案是肯定的。在数据库层面,可以直接将结果设置成表的主键,避免IP地址的重复,因为是主键,也就是表的索引了,数据库查找时会更 快。
对于格式为m.n.x.y的IP地址,转换成Long型数字的算法如下:
使用Java语言,则这样实现:
那么,对于已知的一个表示IP地址的Long型数字,又该如何将其还原成String(字符型)的IP地址呢?算法也很简单,整除和取余。使用Java语言,则这样实现:
算法测试:
结果:
3074337170
183.62.169.146
IP地址转换成Long型数字的算法,布布扣,bubuko.com
原文:http://www.cnblogs.com/zhaoxinshanwei/p/3898484.html