public static ApduMsg GetApduMsg(byte[] data)
{
ApduMsg reslut = new ApduMsg ();
reslut.ResponseData = data;
if (data.Length < 2)
{
//reslut.Msg = "返回信息长度错误";
return reslut;
}
//赋值data最后两个字节,作为状态码
byte[] code = new byte[2];
Array.Copy(data, data.Length - 2, code, 0, 2);
string codeStr = BitConverter.ToString(code);
if (AllMsgDic.TryGetValue(codeStr, out reslut))
{
reslut = (ApduMsg)reslut.Clone();
}
else
{
reslut = new ApduMsg();
reslut.Msg = "未找到已定义到状态信息";
if (codeStr.StartsWith("6C"))
{
reslut.Msg = "Le长度错误,实际长度是xx";
}
}
reslut.ResponseData = data;
return reslut;
}
}