[VB.Net] UShort 轉換格式為 Short
前言:
最近用NModbus元件寫modbus的通訊,但是nmodbus讀取值時取回的是unsigled short,也就是0~65535。當遇到設備是sigled short(-32767~32768)時就會出現負數時數值會出錯,今天一直找不到可以用內部指令的方式轉換,所以只好自己寫一個function
說明:
其實就是將UShort的格式先轉換成16進制,再將16進制轉成帶符號的10進制放到short中
程式碼如下:
最近用NModbus元件寫modbus的通訊,但是nmodbus讀取值時取回的是unsigled short,也就是0~65535。當遇到設備是sigled short(-32767~32768)時就會出現負數時數值會出錯,今天一直找不到可以用內部指令的方式轉換,所以只好自己寫一個function
說明:
其實就是將UShort的格式先轉換成16進制,再將16進制轉成帶符號的10進制放到short中
程式碼如下:
Function Ushort2short(ByVal value As UShort) As Short Return Convert.ToInt16(Convert.ToString(value, 16), 16) End Function
留言
張貼留言