IP地址和long互转

来源:互联网 发布:sas软件有多大 编辑:程序博客网 时间:2024/05/21 07:10
/**     * 将字符串的ip地址转换为long型.     *     * @param ip ip地址     * @return long 型ip地址     */    public static final Long ip2Long(final String ip) {        Long iplong = null;        try{            final String[] ipNums = ip.split("\\.");            iplong = (Long.parseLong(ipNums[0]) << 24)                    + (Long.parseLong(ipNums[1]) << 16)                    + (Long.parseLong(ipNums[2]) << 8)                    + (Long.parseLong(ipNums[3]));        }catch(Exception e){            e.printStackTrace();        }        return iplong;    }    /**     * 将long ip地址转为字符串IP     * long型IP地址     * @param ipaddress     * @return     */    public static String ipLong2Ip(Long ipaddress) {        if(ipaddress == null){            return null;        }        StringBuffer sb = new StringBuffer("");        sb.append(String.valueOf((ipaddress >>> 24)));        sb.append(".");        sb.append(String.valueOf((ipaddress & 0x00FFFFFF) >>> 16));        sb.append(".");        sb.append(String.valueOf((ipaddress & 0x0000FFFF) >>> 8));        sb.append(".");        sb.append(String.valueOf((ipaddress & 0x000000FF)));        return sb.toString();    }
原创粉丝点击