java 网络字节转换工具类

package netkeeper;



/**

 * 网络转换工具

 * @author chenlei

 *

 */

public class Tools {

	/** 

     * 转换short为byte 

     *  

     * @param b 

     * @param s 

     *            需要转换的short 

     * @param index 

     */ 

    public static void putShort(byte b[], short s, int index) {  

        b[index + 1] = (byte) (s >>[img]/images/smiles/icon_cool.gif" alt="[/img]
;  

        b[index + 0] = (byte) (s >> 0);  

    }  

 

    /** 

     * 通过byte数组取到short 

     *  

     * @param b 

     * @param index 

     *            第几位开始取 

     * @return 

     */ 

    public static short getShort(byte[] b, int index) {  

        return (short) (((b[index + 1] > 24);  

        bb[index + 2] = (byte) (x >> 16);  

        bb[index + 1] = (byte) (x >>[img]/images/smiles/icon_cool.gif" alt="[/img]
;  

        bb[index + 0] = (byte) (x >> 0);  

    }  

 

    /** 

     * 通过byte数组取到int 

     *  

     * @param bb 

     * @param index 

     *            第几位开始 

     * @return 

     */ 

    public static int getInt(byte[] bb, int index) {  

        return (int) ((((bb[index + 3] & 0xff) > 56);  

        bb[index + 6] = (byte) (x >> 48);  

        bb[index + 5] = (byte) (x >> 40);  

        bb[index + 4] = (byte) (x >> 32);  

        bb[index + 3] = (byte) (x >> 24);  

        bb[index + 2] = (byte) (x >> 16);  

        bb[index + 1] = (byte) (x >>[img]/images/smiles/icon_cool.gif" alt="[/img]
;  

        bb[index + 0] = (byte) (x >> 0);  

    }  

 

    /** 

     * 通过byte数组取到long 

     *  

     * @param bb 

     * @param index 

     * @return 

     */ 

    public static long getLong(byte[] bb, int index) {  

        return ((((long) bb[index + 7] & 0xff) > 8; // 向右移8位  

        }  

    }  

 

    /** 

     * 字节到字符转换 

     *  

     * @param b 

     * @return 

     */ 

    public static char getChar(byte[] b, int index) {  

        int s = 0;  

        if (b[index + 1] > 0)  

            s += b[index + 1];  

        else 

            s += 256 + b[index + 0];  

        s *= 256;  

        if (b[index + 0] > 0)  

            s += b[index + 1];  

        else 

            s += 256 + b[index + 0];  

        char ch = (char) s;  

        return ch;  

    }  

 

    /** 

     * float转换byte 

     *  

     * @param bb 

     * @param x 

     * @param index 

     */ 

    public static void putFloat(byte[] bb, float x, int index) {  

        // byte[] b = new byte[4];  

        int l = Float.floatToIntBits(x);  

        for (int i = 0; i > 8;  

        }  

    }  

 

    /** 

     * 通过byte数组取得float 

     *  

     * @param bb 

     * @param index 

     * @return 

     */ 

    public static float getFloat(byte[] b, int index) {  

        int l;  

        l = b[index + 0];  

        l &= 0xff;  

        l |= ((long) b[index + 1] > 8;  

        }  

    }  

 

    /** 

     * 通过byte数组取得float 

     *  

     * @param bb 

     * @param index 

     * @return 

     */ 

    public static double getDouble(byte[] b, int index) {  

        long l;  

        l = b[0];  

        l &= 0xff;  

        l |= ((long) b[1]

转载于:https://my.oschina.net/chenleijava/blog/85498

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值