⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tools.java

📁 短信
💻 JAVA
字号:
package com.asiainfo.batchsend.sms.sms.cmpp.util;

/**
 * <p>Title: 通用工具</p>
 * <p>Description: 主要为类型转换</p>
 * <p>Copyright: Copyright (c) 2002</p>
 * <p>Company: </p>
 * @author unascribed
 * @version 1.0
 */
public class Tools{

    private static String HexCode[] = {
        "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
        "a", "b", "c", "d", "e", "f"
    };

    private Tools(){
    }

    public static String byteToHexString(byte b){
        int n = b;
        if(n < 0)
            n = 256 + n;
        int d1 = n / 16;
        int d2 = n % 16;
        return HexCode[d1]+HexCode[d2];
    }

    public static String byteArrayToHexString(byte b[]){
        String result = "";
        for(int i = 0; i < b.length; i++)
            result = result+byteToHexString(b[i]);
        return result;
    }

    public static int byte2int(byte b[], int offset)
    {
        return b[offset + 3] & 0xff | (b[offset + 2] & 0xff) << 8 | (b[offset + 1] & 0xff) << 16 | (b[offset] & 0xff) << 24;
    }

    public static int byte2int(byte b[])
    {
        return b[3] & 0xff | (b[2] & 0xff) << 8 | (b[1] & 0xff) << 16 | (b[0] & 0xff) << 24;
    }

    public static long byte2long(byte b[])
    {
        return (long)b[7] & (long)255 | ((long)b[6] & (long)255) << 8 | ((long)b[5] & (long)255) << 16 | ((long)b[4] & (long)255) << 24 | ((long)b[3] & (long)255) << 32 | ((long)b[2] & (long)255) << 40 | ((long)b[1] & (long)255) << 48 | (long)b[0] << 56;
    }

    public static long byte2long(byte b[], int offset)
    {
        return (long)b[offset + 7] & (long)255 | ((long)b[offset + 6] & (long)255) << 8 | ((long)b[offset + 5] & (long)255) << 16 | ((long)b[offset + 4] & (long)255) << 24 | ((long)b[offset + 3] & (long)255) << 32 | ((long)b[offset + 2] & (long)255) << 40 | ((long)b[offset + 1] & (long)255) << 48 | (long)b[offset] << 56;
    }

    public static byte[] int2byte(int n)
    {
        byte b[] = new byte[4];
        b[0] = (byte)(n >> 24 & 0xff);
        b[1] = (byte)(n >> 16 & 0xff);
        b[2] = (byte)(n >> 8 & 0xff);
        b[3] = (byte)(n & 0xff);
        return b;
    }

/**
 *n 为待转数据,buf[]为转换后的数据,offset为buf[]中转换的起始点
 * 转换后数据从低到高位
 */
    public static void int2byte(int n, byte buf[], int offset)
    {
        buf[offset] = (byte)(n >> 24);
        buf[offset + 1] = (byte)(n >> 16);
        buf[offset + 2] = (byte)(n >> 8);
        buf[offset + 3] = (byte)n;
    }

    public static byte[] short2byte(int n)
    {
        byte b[] = new byte[2];
        b[0] = (byte)(n >> 8);
        b[1] = (byte)n;
        return b;
    }

    public static void short2byte(int n, byte buf[], int offset)
    {
        buf[offset] = (byte)(n >> 8);
        buf[offset + 1] = (byte)n;
    }

    public static byte[] long2byte(long n)
    {
        byte b[] = new byte[8];
        b[0] = (byte)(int)(n >> 56);
        b[1] = (byte)(int)(n >> 48);
        b[2] = (byte)(int)(n >> 40);
        b[3] = (byte)(int)(n >> 32);
        b[4] = (byte)(int)(n >> 24);
        b[5] = (byte)(int)(n >> 16);
        b[6] = (byte)(int)(n >> 8);
        b[7] = (byte)(int)n;
        return b;
    }

    public static void long2byte(long n, byte buf[], int offset)
    {
        buf[offset] = (byte)(int)(n >> 56);
        buf[offset + 1] = (byte)(int)(n >> 48);
        buf[offset + 2] = (byte)(int)(n >> 40);
        buf[offset + 3] = (byte)(int)(n >> 32);
        buf[offset + 4] = (byte)(int)(n >> 24);
        buf[offset + 5] = (byte)(int)(n >> 16);
        buf[offset + 6] = (byte)(int)(n >> 8);
        buf[offset + 7] = (byte)(int)n;
    }
    public static boolean checkMobile(String sMobile){        
        if(sMobile == null)
            return false;
        if(sMobile.length()!= 11)
            return false;
        try {
            Long.parseLong(sMobile);
            return true;
        }
        catch (Exception ex) {
            return false;
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -