2016-07-11 18 views
0

Ich versuche, die empfangene Nachricht zu bestätigen und möchte sie mit dem Code Mein Programm gesendet.ACK-Nachricht (hex zu ASCII)

SMS-Ausgang ist in diesem Format <<<phonenumber,ASCII,5,436865636b>>>

Ich möchte Telefonnummer und die Meldung nach 5 isolieren, und wandeln es

ich bereits einen UDP-Server in ASCII.

Vielen Dank im Voraus.

GELöST:

  var ascii = string.Empty; 

      for (var i = 0; i < hexString.Length; i += 2) 
      { 
       var hs = hexString.Substring(i, 2); 
       var decval = Convert.ToUInt32(hs, 16); 
       var character = Convert.ToChar(decval); 
       ascii += character; 
      } 

      return ascii; 

Antwort

0

Verwenden Regex mit Muster Text-Extraktion beschäftigen.

var message = @"<<<phonenumber,ASCII,5,436865636b>>>"; 
var pattern = @"<<<(?<phoneNumber>\w+),ASCII,5,(?<value>\w+)>>>"; 
var match = Regex.Match(message, pattern); 

var phoneNumber = match.Groups["phoneNumber"].Value; 
var value = match.Groups["value"].Value;