public static string SeptetsToOctetsHex(this string data) { string str = string.Empty; string s = string.Empty; for (int i = 0; i < data.Length; i++) { string str3 = ExtensionDataType.IntToBinary((byte)data[i], 7); if ((i != 0) && ((i % 8) != 0)) { string str5 = str3.Substring(7 - (i % 8)) + s; str = str + ExtensionDataType.IntToHex(ExtensionDataType.BinaryToInt(str5)); } s = str3.Substring(0, 7 - (i % 8)); if ((i == (data.Length - 1)) && (s != string.Empty)) { str = str + ExtensionDataType.IntToHex(ExtensionDataType.BinaryToInt(s)); } } return(str); }
public static string OctetsToSeptetsStr(this byte[] data) { if (data == null) { return(string.Empty); } string str = string.Empty; string s = string.Empty; int index = 0; while (index < data.Length) { string str3 = ExtensionDataType.IntToBinary(data[index], 8); string str4 = string.Empty; string str5 = str3.Substring((index % 7) + 1, 7 - (index % 7)); if ((index != 0) && ((index % 7) != 0)) { str4 = str5 + s; } else { if (index != 0) { str = str + ((char)ExtensionDataType.BinaryToInt(s)); } str4 = str5; } s = str3.Substring(0, (index % 7) + 1); str = str + ((char)ExtensionDataType.BinaryToInt(str4)); index++; } if (((index != 0) && ((index % 7) == 0)) && (s != "0000000")) { str = str + ((char)ExtensionDataType.BinaryToInt(s)); } return(str); }
public static byte[] SeptetsToOctetsInt(this string data) { ArrayList list = new ArrayList(); string s = string.Empty; for (int i = 0; i < data.Length; i++) { string str2 = ExtensionDataType.IntToBinary((byte)data[i], 7); if ((i != 0) && ((i % 8) != 0)) { string str4 = str2.Substring(7 - (i % 8)) + s; list.Add(ExtensionDataType.BinaryToInt(str4)); } s = str2.Substring(0, 7 - (i % 8)); if ((i == (data.Length - 1)) && (s != string.Empty)) { list.Add(ExtensionDataType.BinaryToInt(s)); } } byte[] array = new byte[list.Count]; list.CopyTo(array); return(array); }