From b27d0ba5ab7a11ac6615e0cfee3cf428a7ae834f Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期三, 29 五月 2024 08:56:34 +0800 Subject: [PATCH] 完善代码 --- pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/ByteUtil.java | 126 ++++++++++++++++------------------------- 1 files changed, 49 insertions(+), 77 deletions(-) diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/ByteUtil.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/ByteUtil.java index 31a6248..f2e5c50 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/ByteUtil.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/ByteUtil.java @@ -33,9 +33,8 @@ * @param index 涓嬫爣浣� * @param len 闀垮害 * @return 杩斿洖 杩斿洖 - * @throws Exception 寮傚父 */ - public static boolean bytesIsAll0xFF(byte[] bs, int index, int len)throws Exception { + public static boolean bytesIsAll0xFF(byte[] bs, int index, int len){ int count = 0 ; for(int i = index; i < index + len; i++){ if(bs[i] == (byte)0xFF){ @@ -47,26 +46,11 @@ /** * 浜岃繘鍒惰浆鍗佽繘鍒舵暟 - * @param str + * @param str 浜岃繘鍒跺瓧绗︿覆 * @return 杩斿洖 - * @throws Exception 寮傚父 */ - public static int binary2Int(String str) throws Exception { - int cnt=0; - int sum=0; - str=new StringBuilder(str).reverse().toString();//鍙嶈浆瀛楃涓� - for(int i=0;i<str.length();i++){ - cnt++; - if (str.charAt(i)=='1'){ - int mul=1; - for (int j=1;j<cnt;j++){ - mul*=2; - } - sum+=mul; - } - else continue; - } - return sum; + public static int binary2Int(String str) { + return Integer.parseInt(str, 2); } @@ -74,26 +58,18 @@ * 瀛楄妭杞瓨浜岃繘鍒� * * @param b byte - * @throws Exception 寮傚父 * @return 杩斿洖 String */ - public static String byte2Binary(byte b) throws Exception { - int n = (b + 256) % 256 + 256; - try { - return Integer.toBinaryString(n).substring(1); - } catch (Exception e) { - throw new Exception("瀛楄妭杞崲鎴愪簩杩涘埗鐨勫瓧绗︿覆鍑洪敊锛�", null); - } + public static String byte2Binary(byte b) { + return Integer.toBinaryString(b & 0xFF) ; } /** * 瀛楄妭杞瓨8浣嶄簩杩涘埗 * - * @param b - * byte - * @throws Exception 寮傚父 + * @param b byte * @return 杩斿洖 String */ - public static String byte2bit8Binary(byte b) throws Exception { + public static String byte2bit8Binary(byte b) { String s = byte2Binary(b); int len = s.length(); for (int i = 0; i < 8 - len; i++) { @@ -103,13 +79,11 @@ } /** - * 瀛楄妭鍙朾it - * @param b - * @param b - * @throws Exception 寮傚父 + * 瀛楄妭鏁� 鍙栧嚭8涓猙it + * @param b 瀛楄妭鏁� * @return 杩斿洖 String */ - public static byte[] getBit(byte b) throws Exception { + public static byte[] getBit(byte b) { byte[] bs = new byte[8] ; bs[0] = (byte)(b & 1) ; bs[1] = (byte)((b & 2) >> 1) ; @@ -123,8 +97,8 @@ } /** - * 瀛楄妭鍙朾it - * @param b + * 瀛楄妭鏁� 鍙栧嚭bit + * @param b 瀛楄妭鏁� * @param index 涓嬫爣浣� * @throws Exception 寮傚父 * @return 杩斿洖 String @@ -178,8 +152,7 @@ public static void double2Bytes_BE(byte[] bs, double value, int from)throws Exception { boolean b = isOutOfArrLength(bs.length, (from - 1) + 8); if (b) { - Long l = Double.doubleToLongBits(value); - long2Bytes_BE(bs, l, from); + long2Bytes_BE(bs, Double.doubleToLongBits(value), from); } else { throw new Exception("double2Bytes鏃舵暟缁勮秺鐣�"); } @@ -195,8 +168,7 @@ public static void double2Bytes_LE(byte[] bs, double value, int from)throws Exception { boolean b = isOutOfArrLength(bs.length, (from - 1) + 8); if (b) { - Long l = Double.doubleToLongBits(value); - long2Bytes_LE(bs, l, from); + long2Bytes_LE(bs, Double.doubleToLongBits(value), from); } else { throw new Exception("double2Bytes鏃舵暟缁勮秺鐣�"); } @@ -338,7 +310,7 @@ long l = 0; long[] ls = new long[len] ; for(int i = 0 ; i < len; i++){ - ls[i] = bs[i] ; + ls[i] = bs[i] & 0xFF ; } for(int i = len-1 ; i >= 0; i--){ ls[(len - 1) - i] <<= 8 * i ; @@ -362,14 +334,14 @@ boolean b = isOutOfArrLength(bs.length, (from - 1) + 8); if (b) { long s = 0; - long s0 = bs[from + 0] ;// 鏈�浣庝綅 - long s1 = bs[from + 1] ; - long s2 = bs[from + 2] ; - long s3 = bs[from + 3] ; - long s4 = bs[from + 4] ; - long s5 = bs[from + 5] ; - long s6 = bs[from + 6] ; - long s7 = bs[from + 7] ; + long s0 = bs[from + 0] & 0xFF ;// 鏈�浣庝綅 + long s1 = bs[from + 1] & 0xFF ; + long s2 = bs[from + 2] & 0xFF ; + long s3 = bs[from + 3] & 0xFF ; + long s4 = bs[from + 4] & 0xFF ; + long s5 = bs[from + 5] & 0xFF ; + long s6 = bs[from + 6] & 0xFF ; + long s7 = bs[from + 7] & 0xFF ; // s7涓嶅彉 s6 <<= 8; @@ -399,7 +371,7 @@ short len = (short)(end - from + 1) ; long[] ls = new long[len] ; for(short i = 0 ; i < len; i++){ - ls[i] = bs[from + i] ; + ls[i] = bs[from + i] & 0xFF ; } for(short i = (short)(len-1) ; i >= 0; i--){ ls[i] <<= 8 * (len - (i + 1)) ; @@ -428,7 +400,7 @@ long l = 0; long[] ls = new long[len] ; for(int i = 0 ; i < len; i++){ - ls[i] = bs[i] ; + ls[i] = bs[i] & 0xFF ; } for(int i = 0 ; i < len; i++){ ls[(len - 1) - i] <<= 8 * i ; @@ -452,14 +424,14 @@ boolean b = isOutOfArrLength(bs.length, (from - 1) + 8); if (b) { long s = 0; - long s0 = bs[from + 0] ;// 鏈�浣庝綅 - long s1 = bs[from + 1] ; - long s2 = bs[from + 2] ; - long s3 = bs[from + 3] ; - long s4 = bs[from + 4] ; - long s5 = bs[from + 5] ; - long s6 = bs[from + 6] ; - long s7 = bs[from + 7] ; + long s0 = bs[from] & 0xFF ;// 鏈�浣庝綅 + long s1 = bs[from + 1] & 0xFF ; + long s2 = bs[from + 2] & 0xFF ; + long s3 = bs[from + 3] & 0xFF ; + long s4 = bs[from + 4] & 0xFF ; + long s5 = bs[from + 5] & 0xFF ; + long s6 = bs[from + 6] & 0xFF ; + long s7 = bs[from + 7] & 0xFF ; // s0涓嶅彉 s1 <<= 8; @@ -490,7 +462,7 @@ short len = (short)(end - from + 1) ; long[] ls = new long[len] ; for(short i = 0 ; i < len; i++){ - ls[i] = bs[from + i] ; + ls[i] = bs[from + i] & 0xFF ; } for(short i = 0 ; i < len; i++){ ls[i] <<= 8 * i ; @@ -559,10 +531,10 @@ boolean b = isOutOfArrLength(bs.length, (from - 1) + 4); if (b) { int s = 0; - int s0 = bs[from + 0] ;// 鏈�浣庝綅 - int s1 = bs[from + 1] ; - int s2 = bs[from + 2] ; - int s3 = bs[from + 3] ; + int s0 = bs[from + 0] & 0xFF ;// 鏈�浣庝綅 + int s1 = bs[from + 1] & 0xFF ; + int s2 = bs[from + 2] & 0xFF ; + int s3 = bs[from + 3] & 0xFF ; // s3涓嶅彉 s2 <<= 8; @@ -586,10 +558,10 @@ boolean b = isOutOfArrLength(bs.length, (from - 1) + 4); if (b) { int s = 0; - int s0 = bs[from + 0] ;// 鏈�浣庝綅 - int s1 = bs[from + 1] ; - int s2 = bs[from + 2] ; - int s3 = bs[from + 3] ; + int s0 = bs[from + 0] & 0xFF ;// 鏈�浣庝綅 + int s1 = bs[from + 1] & 0xFF ; + int s2 = bs[from + 2] & 0xFF ; + int s3 = bs[from + 3] & 0xFF ; // s0涓嶅彉 s1 <<= 8; @@ -682,8 +654,8 @@ boolean b = isOutOfArrLength(bs.length, (from - 1) + 2); if (b) { int s = 0; - int s0 = bs[from + 0] ; - int s1 = bs[from + 1] ; + int s0 = bs[from + 0] & 0xFF ; + int s1 = bs[from + 1] & 0xFF ; // s1涓嶅彉 s0 <<= 8; @@ -705,8 +677,8 @@ boolean b = isOutOfArrLength(bs.length, (from - 1) + 2); if (b) { int s = 0; - int s0 = bs[from + 0] ; - int s1 = bs[from + 1] ; + int s0 = bs[from + 0] & 0xFF ; + int s1 = bs[from + 1] & 0xFF ; // s0涓嶅彉 s1 <<= 8; @@ -1223,7 +1195,7 @@ } /** - * 澶х妯″紡銆婃暟鎹綆浣嶅湪鏁扮粍楂樺瓧鑺傘�� + * 灏忕妯″紡銆婃暟鎹綆浣嶅湪鏁扮粍楂樺瓧鑺傘�� * 瀛楃涓茶浆鎹㈡垚byte鏁扮粍 * @value bs byte[] * @value str String @@ -1501,5 +1473,5 @@ System.out.println(v); } */ - + } -- Gitblit v1.8.0