private void Decode(byte language, byte[] data, FruByteStringType encoding) { switch (encoding) { case FruByteStringType.Binary: this.Text = IpmiSharedFunc.ByteArrayToHexString(data); break; case FruByteStringType.BcdPlus: this.Text = IpmiSharedFunc.DecodeBcdPlus(data); break; case FruByteStringType.Packed6BitAscii: data = ReplaceNonAsciiChars(data); this.Text = IpmiSharedFunc.DecodePacked6bitAscii(data); break; case FruByteStringType.Text: // replace non ASCII characters data = ReplaceNonAsciiChars(data); if ((this.Language == FruByteString.defaultLang) || (this.Language == FruByteString.EnLang)) { this.Text = System.Text.Encoding.ASCII.GetString(data).Trim(); } else { this.Text = System.Text.Encoding.Unicode.GetString(data).Trim(); } break; } }