String to Hex C#

OP #2662685
Hi,
wie kann ich einen String in eine HEx-Zahl umwandeln, wobei der String 
schon das richtige Format hat.
Also z.B.
Sring a = "FF00";

dann sollte so konvertiert werden.

int b = Convert.ToInt16(a);

b sollte dann 0xFF00 sein.

Hab im inernet gsucht aber nichts gfune.

Danke für eure Hilfe.

Gruß
Agit
OP
Hi Peter,
danke für die schnelle Antwort.
Ich denke ich hab mein Problem nicht klar geschildert.

Also:
in der GUI habe ich ein Textfeld, dass wenn ich irgendwas drücke HEX 
werte ausgibt. Dieses Textfeld speichere ich in einen String, wobei es 
eigentlich shcon der Wert ist den ich benötige. Aber ich kann ja aus dem 
Textfeld nicht direkt einen Integer machen oder?

Nun habe ich meinen String "FF00EE11".
daraus brauch ich halt byte zum biespiel = 0XFF00EE11

Vielen Dank für die Hilfe

Gruß

Agit
Gast
Agit A. schrieb:
> daraus brauch ich halt byte zum biespiel = 0XFF00EE11

nein das brauchst du nicht, denn 0XFF00EE11 = 4278251025 = 
0b11111111000000001110111000010001 = 037700167021

wie der computer es intern speichert kann dir ziehmlich egal sein. du 
Willst eine Zahl mehr nicht.

Und dieses steht im den verlinkten artikel wie es geht.
OP
Hi,

hab da doch noch ne frage.
Der String wird bei deiner Funktion in Hex gewandelt.
Ich willl aber dass der String so bleibt wie er ist und ich ihn als 
Integer weiterverwenden kann anstatt als string.
Verstehst du was ich meine?

String "abbaa" ( ist eigentlich schon der richtige Hex-Wert muss nicht 
gewandelt werden, will aber als Integer haben nicht als String)

Danke für die antwort

Gruß

Agit
Gast
Hallo,
dir einzelnen Zeichen sind als ASCII Code im String hinterlegt. Jedes 
Zeichen belegt ein Byte (kein UNICODE) mit dem Wert aus der ASCII 
Tabelle.
"0" hat den Wert 48, "9" den Wert 57, "A" hat 65 und "F" hat 70.

Value=0
Schleife:
   Value=Value*16
   nächstes Zeichen von links nach c holen
   wenn c>="0" und c<="9": cWert=c-48
   wenn c>="A" und c<="F": cWert=c-55
   Value= Value+cWert
nächstes Zeichen


Waldo
Gast
Agit A. schrieb:
> Ich willl aber dass der String so bleibt wie er ist und ich ihn als
> Integer weiterverwenden kann anstatt als string.
> Verstehst du was ich meine?

nein - das ist nicht zu verstehen. entweder willst du eine zahl haben 
oder eine String beides gleichzeitig geht nicht.
OP
Hi,

ich muss nichts wandeln,
will nur meinen String als Ineger haben.
Es soll ich also nu der datentyp ändern.
Aus string a = "ab22" soll int a = 0xab22 werden.
Den String bekomm ich aus einer Textbox. Will den Wert der Box aber als 
Integer haben.

Gruß

Agit
Gast
Agit A. schrieb:
> will nur meinen String als Ineger haben.
> Es soll ich also nu der datentyp ändern.

und genau das geht nicht, man kann aus einen String kein Integer und 
umwandlung machen. Ich versteh immer noch nicht was du willst.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 14 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.