Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
"Binärstring" aus "Hexstring" erzeugen
Viper2000
myCSharp.de - Member



Dabei seit:
Beiträge: 63

Themenstarter:

"Binärstring" aus "Hexstring" erzeugen

beantworten | zitieren | melden

Hallo Forum,

ich habe ein Gerät das mir über die RS232 Schnittstelle fortlaufend einen String mit einem 16-bit Hex-Wert sendet. Der String hat das Format: "&HFFFF". Also zuerst immer &H mit anschließender Information. Aus diesem String würde ich gerne einen anderen String erzeugen der die Informationen Binär Codiert enthält. Das Resultat aus obigem Beispiel würde also dann: "1111111111111111" sein. Ich habe also aus dem Stirng die ersten zwei Zeichen entfernt um den reinen Wert zu bekommen. Nun hapert es also daran den String "FFFF" in "1111111111111111" umzuwnadlen...

Vielleicht habt ihr eine Idee?

Viele Grüße!
private Nachricht | Beiträge des Benutzers
zommi
myCSharp.de - Member

Avatar #avatar-2617.png


Dabei seit:
Beiträge: 1.361
Herkunft: Berlin

beantworten | zitieren | melden

Hallo Viper2000,
  1. HexString->short: Convert.ToInt16 Method (String, Int32)
  2. short->BinärString: Convert.ToString Method (Int16, Int32)
  3. BinärString mit Nullen auffüllen und so auf 16 Stellen bringen: String.PadLeft-Methode (Int32, Char)

  4. beste Grüße
    zommi
private Nachricht | Beiträge des Benutzers
Viper2000
myCSharp.de - Member



Dabei seit:
Beiträge: 63

Themenstarter:

beantworten | zitieren | melden

Einwandfrei! Danke.
Hier auch nochmal der genaue code falls es jemanden interessiert:


string value = "&HAFAF"; //Debug only
string temp1 = value.Remove(0, 2); //Remove the leading "&H" from string
short temp2 = Convert.ToInt16(temp1, 16); //Convert the 16-bit hex-value to short
string temp3 = Convert.ToString(temp2, 2); //Convert the short value to binary string
string result = temp3.PadLeft(16, '0'); //Fill with zeros
Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von Viper2000 am .
private Nachricht | Beiträge des Benutzers