ASP.NET实现根据IP获取省市地址的方法

2019-05-23 07:25:43于丽

            if (ipArr.Length ==3)
                ip = ip +".0";
            ipArr = ip.Split(dot);

            long ip_Int =0;
            long p1 =long.Parse(ipArr[0]) *256*256*256;
            long p2 =long.Parse(ipArr[1]) *256*256;
            long p3 =long.Parse(ipArr[2]) *256;
            long p4 =long.Parse(ipArr[3]);
            ip_Int = p1 + p2 + p3 + p4;
            return ip_Int;
        }//获取起始IP范围#region 获取起始IP范围 privatelong GetStartIp(long recNO)
        {
            long offSet = firstStartIp + recNO *7;
            //objfs.Seek(offSet,SeekOrigin.Begin);             objfs.Position = offSet;
            byte[] buff =new Byte[7];
            objfs.Read(buff, 0, 7);

            endIpOff = Convert.ToInt64(buff[4].ToString()) + Convert.ToInt64(buff[5].ToString()) *256+ Convert.ToInt64(buff[6].ToString()) *256*256;
            startIp = Convert.ToInt64(buff[0].ToString()) + Convert.ToInt64(buff[1].ToString()) *256+ Convert.ToInt64(buff[2].ToString()) *256*256+ Convert.ToInt64(buff[3].ToString()) *256*256*256;
            return startIp;
        }// 获取结束IP#region 获取结束IP privatelong GetEndIp()
        {
            //objfs.Seek(endIpOff,SeekOrigin.Begin);             objfs.Position = endIpOff;
            byte[] buff =new Byte[5];
            objfs.Read(buff, 0, 5);
            this.endIp = Convert.ToInt64(buff[0].ToString()) + Convert.ToInt64(buff[1].ToString()) *256+ Convert.ToInt64(buff[2].ToString()) *256*256+ Convert.ToInt64(buff[3].ToString()) *256*256*256;