static void Main(string[] args) { byte[] payload = { 1, 204, 99, 37, 86, 103, 105, 241, 16, 0, 107, 0, 16, 242, 151, 0, 0, 190 }; var message = GPSMessage.FromBinary(payload); System.Console.WriteLine(message.ToString()); System.Console.ReadLine(); }
public static GPSMessage FromBinary(byte[] payload) { System.IO.MemoryStream stream = new System.IO.MemoryStream(payload); System.IO.BinaryReader reader = new System.IO.BinaryReader(stream); GPSMessage result = new GPSMessage(); result.ValidityFlags = reader.ReadByte(); result.TargetLatRaw = System.Net.IPAddress.NetworkToHostOrder(reader.ReadInt32()); result.TargetLongRaw = System.Net.IPAddress.NetworkToHostOrder(reader.ReadInt32()); return(result); }