| package com.genersoft.iot.vmp.jt1078.util; | 
|   | 
| /** | 
|  * 32位整型的二进制读写 | 
|  */ | 
| public class Bin { | 
|   | 
|     private static final int[] bits = new int[32]; | 
|   | 
|     static { | 
|         bits[0] = 1; | 
|         for (int i = 1; i < bits.length; i++) { | 
|             bits[i] = bits[i - 1] << 1; | 
|         } | 
|     } | 
|   | 
|     /** | 
|      * 读取n的第i位 | 
|      * | 
|      * @param n int32 | 
|      * @param i 取值范围0-31 | 
|      */ | 
|     public static boolean get(int n, int i) { | 
|         return (n & bits[i]) == bits[i]; | 
|     } | 
|   | 
|     /** | 
|      * 不足位数从左边加0 | 
|      */ | 
|     public static String strHexPaddingLeft(String data, int length) { | 
|         int dataLength = data.length(); | 
|         if (dataLength < length) { | 
|             StringBuilder dataBuilder = new StringBuilder(data); | 
|             for (int i = dataLength; i < length; i++) { | 
|                 dataBuilder.insert(0, "0"); | 
|             } | 
|             data = dataBuilder.toString(); | 
|         } | 
|         return data; | 
|     } | 
| } |