From 211cd083bc9fc1871779802650dfe0e607d8ca77 Mon Sep 17 00:00:00 2001 From: 严智鑫 <test> Date: 星期五, 10 五月 2024 08:25:12 +0800 Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/HangZhouMes --- hangzhoumesParent/common/servicebase/src/main/java/com/mes/device/PlcParameterObject.java | 23 ++++++++++++++++++++--- 1 files changed, 20 insertions(+), 3 deletions(-) diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/device/PlcParameterObject.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/device/PlcParameterObject.java index 10a3b2f..85636ee 100644 --- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/device/PlcParameterObject.java +++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/device/PlcParameterObject.java @@ -1,6 +1,7 @@ package com.mes.device; import java.lang.reflect.Array; +import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.LinkedHashMap; @@ -146,9 +147,13 @@ Array.setByte(valueList, i, plcValueArray[plcParameterInfo.getAddressIndex() + i]); } + if (plcParameterInfo.getAddressLength() == 2) { plcParameterInfo.setValue(String.valueOf(byte2short(valueList))); - } else if (plcParameterInfo.getAddressLength() == 14) { + } else if (plcParameterInfo.getAddressLength() == 4) { + plcParameterInfo.setValue(String.valueOf(byte2int(valueList))); + } + else if (plcParameterInfo.getAddressLength() >10) { plcParameterInfo.setValue((byteToHexString(valueList))); } else { String valuestr = new String(valueList); @@ -186,9 +191,21 @@ return l; } + /** + * byte[]绫诲瀷杞瑂hort + * + * @param b byte[]绫诲瀷鍊� + */ + public static short byte2int(byte[] b) { + short l = 0; + for (int i = 0; i < 4; i++) { + l <<= 8; //<<=鍜屾垜浠殑 +=鏄竴鏍风殑锛屾剰鎬濆氨鏄� l = l << 8 + l |= (b[3-i] & 0xff); //鍜屼笂闈篃鏄竴鏍风殑 l = l | (b[i]&0xff) + } + return l; + } public static String byteToHexString(byte[] bytes) { - - String str = new String(bytes, StandardCharsets.UTF_8); + String str = new String(bytes, StandardCharsets.UTF_8).trim(); return str; } -- Gitblit v1.8.0