当前位置: 首页 > news >正文

网站建设技术服务公司vs2012做网站

网站建设技术服务公司,vs2012做网站,wordpress 微信 商城模板,前端网站重构怎么做java处理ip的工具类#xff0c;包括把long类型的Ip转为一般Ip类型、把xx.xx.xx.xx类型的转为long类型、根据掩码位获取掩码、根据 ip/掩码位 计算IP段的起始IP、根据 ip/掩码位 计算IP段的终止IP等方法#xff0c;可以直接使用#xff01;package com.hh.test;import java.u…java处理ip的工具类包括把long类型的Ip转为一般Ip类型、把xx.xx.xx.xx类型的转为long类型、根据掩码位获取掩码、根据 ip/掩码位 计算IP段的起始IP、根据 ip/掩码位 计算IP段的终止IP等方法可以直接使用package com.hh.test;import java.util.HashMap;import java.util.Map;import org.apache.commons.lang3.StringUtils;/*** IP工具类** author bl* email kutekute00gmail.com**/public class IPUtils{/*** 把long类型的Ip转为一般Ip类型xx.xx.xx.xx** param ip* return*/public static String getIpFromLong(Long ip){String s1 String.valueOf((ip 4278190080L) / 16777216L);String s2 String.valueOf((ip 16711680L) / 65536L);String s3 String.valueOf((ip 65280L) / 256L);String s4 String.valueOf(ip 255L);return s1 . s2 . s3 . s4;}/*** 把xx.xx.xx.xx类型的转为long类型的** param ip* return*/public static Long getIpFromString(String ip){Long ipLong 0L;String ipTemp ip;ipLong ipLong * 256 Long.parseLong(ipTemp.substring(0, ipTemp.indexOf(.)));ipTemp ipTemp.substring(ipTemp.indexOf(.) 1, ipTemp.length());ipLong ipLong * 256 Long.parseLong(ipTemp.substring(0, ipTemp.indexOf(.)));ipTemp ipTemp.substring(ipTemp.indexOf(.) 1, ipTemp.length());ipLong ipLong * 256 Long.parseLong(ipTemp.substring(0, ipTemp.indexOf(.)));ipTemp ipTemp.substring(ipTemp.indexOf(.) 1, ipTemp.length());ipLong ipLong * 256 Long.parseLong(ipTemp);return ipLong;}/*** 根据掩码位获取掩码** param maskBit*            掩码位数如28、30* return*/public static String getMaskByMaskBit(String maskBit){return StringUtils.isEmpty(maskBit) ? error, maskBit is null !: maskBitMap().get(maskBit);}/*** 根据 ip/掩码位 计算IP段的起始IP 如 IP串 218.240.38.69/30** param ip*            给定的IP如218.240.38.69* param maskBit*            给定的掩码位如30* return 起始IP的字符串表示*/public static String getBeginIpStr(String ip, String maskBit){return getIpFromLong(getBeginIpLong(ip, maskBit));}/*** 根据 ip/掩码位 计算IP段的起始IP 如 IP串 218.240.38.69/30** param ip*            给定的IP如218.240.38.69* param maskBit*            给定的掩码位如30* return 起始IP的长整型表示*/public static Long getBeginIpLong(String ip, String maskBit){return getIpFromString(ip) getIpFromString(getMaskByMaskBit(maskBit));}/*** 根据 ip/掩码位 计算IP段的终止IP 如 IP串 218.240.38.69/30** param ip*            给定的IP如218.240.38.69* param maskBit*            给定的掩码位如30* return 终止IP的字符串表示*/public static String getEndIpStr(String ip, String maskBit){return getIpFromLong(getEndIpLong(ip, maskBit));}/*** 根据 ip/掩码位 计算IP段的终止IP 如 IP串 218.240.38.69/30** param ip*            给定的IP如218.240.38.69* param maskBit*            给定的掩码位如30* return 终止IP的长整型表示*/public static Long getEndIpLong(String ip, String maskBit){return getBeginIpLong(ip, maskBit) ~getIpFromString(getMaskByMaskBit(maskBit));}/*** 根据子网掩码转换为掩码位 如 255.255.255.252转换为掩码位 为 30** param netmarks* return*/public static int getNetMask(String netmarks){StringBuffer sbf;String str;int inetmask 0, count 0;String[] ipList netmarks.split(\\.);for (int n 0; n ipList.length; n){sbf toBin(Integer.parseInt(ipList[n]));str sbf.reverse().toString();count 0;for (int i 0; i str.length(); i){i str.indexOf(1, i);if (i -1){break;}count;}inetmask count;}return inetmask;}/*** 计算子网大小** param netmask*            掩码位* return*/public static int getPoolMax(int maskBit){if (maskBit 0 || maskBit 32){return 0;}return (int) Math.pow(2, 32 - maskBit) - 2;}private static StringBuffer toBin(int x){StringBuffer result new StringBuffer();result.append(x % 2);x / 2;while (x 0){result.append(x % 2);x / 2;}return result;}/** 存储着所有的掩码位及对应的掩码 key:掩码位 value:掩码(x.x.x.x)*/private static Map maskBitMap(){Map maskBit new HashMap();maskBit.put(1, 128.0.0.0);maskBit.put(2, 192.0.0.0);maskBit.put(3, 224.0.0.0);maskBit.put(4, 240.0.0.0);maskBit.put(5, 248.0.0.0);maskBit.put(6, 252.0.0.0);maskBit.put(7, 254.0.0.0);maskBit.put(8, 255.0.0.0);maskBit.put(9, 255.128.0.0);maskBit.put(10, 255.192.0.0);maskBit.put(11, 255.224.0.0);maskBit.put(12, 255.240.0.0);maskBit.put(13, 255.248.0.0);maskBit.put(14, 255.252.0.0);maskBit.put(15, 255.254.0.0);maskBit.put(16, 255.255.0.0);maskBit.put(17, 255.255.128.0);maskBit.put(18, 255.255.192.0);maskBit.put(19, 255.255.224.0);maskBit.put(20, 255.255.240.0);maskBit.put(21, 255.255.248.0);maskBit.put(22, 255.255.252.0);maskBit.put(23, 255.255.254.0);maskBit.put(24, 255.255.255.0);maskBit.put(25, 255.255.255.128);maskBit.put(26, 255.255.255.192);maskBit.put(27, 255.255.255.224);maskBit.put(28, 255.255.255.240);maskBit.put(29, 255.255.255.248);maskBit.put(30, 255.255.255.252);maskBit.put(31, 255.255.255.254);maskBit.put(32, 255.255.255.255);return maskBit;}/*** 根据掩码位获取掩码** param masks* return*/Deprecatedpublic static String getMaskByMaskBit(int masks){String ret ;if (masks 1)ret 128.0.0.0;else if (masks 2)ret 192.0.0.0;else if (masks 3)ret 224.0.0.0;else if (masks 4)ret 240.0.0.0;else if (masks 5)ret 248.0.0.0;else if (masks 6)ret 252.0.0.0;else if (masks 7)ret 254.0.0.0;else if (masks 8)ret 255.0.0.0;else if (masks 9)ret 255.128.0.0;else if (masks 10)ret 255.192.0.0;else if (masks 11)ret 255.224.0.0;else if (masks 12)ret 255.240.0.0;else if (masks 13)ret 255.248.0.0;else if (masks 14)ret 255.252.0.0;else if (masks 15)ret 255.254.0.0;else if (masks 16)ret 255.255.0.0;else if (masks 17)ret 255.255.128.0;else if (masks 18)ret 255.255.192.0;else if (masks 19)ret 255.255.224.0;else if (masks 20)ret 255.255.240.0;else if (masks 21)ret 255.255.248.0;else if (masks 22)ret 255.255.252.0;else if (masks 23)ret 255.255.254.0;else if (masks 24)ret 255.255.255.0;else if (masks 25)ret 255.255.255.128;else if (masks 26)ret 255.255.255.192;else if (masks 27)ret 255.255.255.224;else if (masks 28)ret 255.255.255.240;else if (masks 29)ret 255.255.255.248;else if (masks 30)ret 255.255.255.252;else if (masks 31)ret 255.255.255.254;else if (masks 32)ret 255.255.255.255;return ret;}}
http://www.sadfv.cn/news/268534/

相关文章:

  • 网站设计中遇到的问题企业网站建设会计分录
  • 本地的响应式网站建设开发第一个app应用程序
  • 优的网站建设明细报价表盐山县网站建设公司
  • 开发网站公司如何运营门户网登录入口
  • 做数据表格的网站山西又增一例在忻州
  • 哈尔滨公司网站团队开发网站公司收费
  • 昆明网站开发公司电话网页设计与网站建设考试名词解释2019
  • 无锡建设信息中心网站wordpress 收邮件
  • 东莞做外贸网站公司钢结构
  • 手机网站 分享按钮甘肃张掖网站建设
  • 南通北京网站建设东圃做网站的公司
  • 一个网站可以做多少弹窗广告抖音推广怎么做
  • 建设家装网站企业网站策划过程
  • 建设企业网站体会wordpress文章页面没有格式调整
  • 做推送的网站室内设计者联盟网
  • 大连网站建站wordpress如何连接图册
  • 做网站1500全包哈尔滨模板建站品牌
  • 长沙口碑好网站建设企业策划书模板免费下载的网站
  • 网站tag 怎么实现十大免费cad制图软件
  • 陕西手机网站建设陕西恒业建设集团网站
  • 广州h5网站编程开发
  • 素质课网站设计与建设seo关键词查询排名软件
  • 网站虚假备案wordpress树形主题
  • 吉安建设工程项目网站今天最新新闻
  • 古风网站建设广州vi设计公司
  • 《网站建设 补充合同陕西省建设网三类人员证书查询系统
  • 学校内部网站开发价格做网站499
  • 网站设计的初衷4G访问wordpress
  • 一建 建设网站首页做网站为何要续费
  • 网站开发技术 创新点网站上添加百度地图导航