From def1eb8623e1444164ae4bce9179d011a89b8c5e Mon Sep 17 00:00:00 2001 From: 严智鑫 <test> Date: 星期二, 03 十二月 2024 09:15:27 +0800 Subject: [PATCH] 现场对接批量更新 --- JiuMuMesParent/common/servicebase/src/main/java/com/mes/tools/HexConversion.java | 53 +++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 47 insertions(+), 6 deletions(-) diff --git a/JiuMuMesParent/common/servicebase/src/main/java/com/mes/tools/HexConversion.java b/JiuMuMesParent/common/servicebase/src/main/java/com/mes/tools/HexConversion.java index 4996e62..0979522 100644 --- a/JiuMuMesParent/common/servicebase/src/main/java/com/mes/tools/HexConversion.java +++ b/JiuMuMesParent/common/servicebase/src/main/java/com/mes/tools/HexConversion.java @@ -52,7 +52,35 @@ numberHex = String.format("%2s", numberHex).replace(' ', '0'); return numberHex; } - + /** + * 浠巄yte鏁扮粍涓彇int鏁板�硷紝鏈柟娉曢�傜敤浜�(浣庝綅鍦ㄥ墠锛岄珮浣嶅湪鍚�)鐨勯『搴忥紝鍜屽拰intToBytes()閰嶅浣跨敤 + * + * @param src: byte鏁扮粍 + * @param offset: 浠庢暟缁勭殑绗琽ffset浣嶅紑濮� + * @return int鏁板�� + */ + public static int bytesToIntDesc(byte[] src, int offset) { + int value=0; + int length = src.length; + for(int i=0;i<length;i++){ + value+=(int)((src[offset+i]&0xFF)<<(length-i-1)*8); + } + return value; + } + /** + * 灏唅nt鏁板�艰浆鎹负鍗爏ize涓瓧鑺傜殑byte鏁扮粍锛屾湰鏂规硶閫傜敤浜�(浣庝綅鍦ㄥ墠锛岄珮浣嶅湪鍚�)鐨勯『搴忋�� 鍜宐ytesToInt锛堬級閰嶅浣跨敤 + * @param value + * 瑕佽浆鎹㈢殑int鍊� + * @return byte鏁扮粍 + */ + public static byte[] intToBytesDesc( int value,int size ) + { + byte[] src = new byte[size]; + for(int i=0;i<size;i++){ + src[i] = (byte) ((value>>(size-i-1)*8) & 0xFF); + } + return src; + } /** * 浠巄yte鏁扮粍涓彇int鏁板�硷紝鏈柟娉曢�傜敤浜�(浣庝綅鍦ㄥ墠锛岄珮浣嶅湪鍚�)鐨勯『搴忥紝鍜屽拰intToBytes()閰嶅浣跨敤 * @@ -61,11 +89,24 @@ * @return int鏁板�� */ public static int bytesToInt(byte[] src, int offset) { - int value; - value = (int) ((src[offset] & 0xFF) - | ((src[offset+1] & 0xFF)<<8) - | ((src[offset+2] & 0xFF)<<16) - | ((src[offset+3] & 0xFF)<<24)); + int value=0; + for(int i=0;i<src.length;i++){ + value+=(int)((src[offset+i]&0xFF)<<i*8); + } return value; } + /** + * 灏唅nt鏁板�艰浆鎹负鍗爏ize涓瓧鑺傜殑byte鏁扮粍锛屾湰鏂规硶閫傜敤浜�(浣庝綅鍦ㄥ墠锛岄珮浣嶅湪鍚�)鐨勯『搴忋�� 鍜宐ytesToInt锛堬級閰嶅浣跨敤 + * @param value + * 瑕佽浆鎹㈢殑int鍊� + * @return byte鏁扮粍 + */ + public static byte[] intToBytes( int value,int size ) + { + byte[] src = new byte[size]; + for(int i=0;i<src.length;i++){ + src[i] = (byte) ((value>>i*8) & 0xFF); + } + return src; + } } -- Gitblit v1.8.0