/// <summary> /// 读取ASCII字符串,长度为寄存器数量,最终的字符串长度为这个值的2倍 /// </summary> /// <param name="address">起始地址</param> /// <param name="length">寄存器长度</param> /// <exception cref="IndexOutOfRangeException"></exception> /// <returns></returns> public string ReadString(ushort address, ushort length) { string str = string.Empty; hybirdLockRegister.Enter( ); str = byteTransform.TransString(Register, address * 2, length * 2, Encoding.ASCII); hybirdLockRegister.Leave( ); return(str); }
/// <summary> /// 将指定的OperateResult类型转化 /// </summary> /// <param name="result">原始的类型</param> /// <param name="byteTransform">数据转换方法</param> /// <returns>转化后的类型</returns> public static OperateResult <string> GetStringResultFromBytes(OperateResult <byte[]> result, IByteTransform byteTransform) { return(GetResultFromBytes(result, m => byteTransform.TransString(m, 0, m.Length, Encoding.ASCII))); }