![]() |
gemischter string umwandeln
Hallo , ich habe einen string der wie folgt aussieht
"04 05 07 09 " diesen würde ich gerne als integer wert haben, aber dadur das ich wohl leerzeichen dazwischen habe funzt das nicht. Gibt es keine umwandlung die sich nur die zahlen anschaut, diese umwandelt und im selben format bleibt. Der Sinn dahinter ist es das diese Zahlen hex Zahlen sind und ich diese in dez umwandeln möchte, also einfach eine umwandlung von strtoint machen muß. Also kurz und knapp. Wie bekomme ich das Bild hin. HEX 04 05 06 09 umwandeln DEZ 04 05 06 09 |
Re: gemischter string umwandeln
Du könntest die Leerzeichen mit StringReplace rausschneiden:
Delphi-Quellcode:
StringReplace('04 05 07 09', ' ', '', [rfReplaceAll]) = '04050709'
|
Re: gemischter string umwandeln
ok, ich schneide sie dann raus, wandel den string um, aber wei bekomme ich sie dann wieder rein? Um eine bessere Übersciht zu haben?
|
Re: gemischter string umwandeln
Habe versucht den string 04000500 in einen integerwert umzuwandeln, funktioniert leider nicht.
Meldung:Kein Gültiger Integerwert. Wo liegt das Problem? |
Re: gemischter string umwandeln
Entweder die führende Null stört oder es sind noch andere Zeichen im Eingabestring. die führenden Nullen könnte man z.B. so rauslöschen
Delphi-Quellcode:
Neue Leerzeichen einfügen geht mit
var count: Integer;
count := 1; for i:=1 to Length(MeinString) do If MeinString[i] = '0' then inc(count) else break; MeinString := copy(MeinString, count, MaxInt); ![]() |
Re: gemischter string umwandeln
|
Re: gemischter string umwandeln
Mit welcher Funktion versuchst du den String in ein Integer zu wandeln? Welche Delphi Version benutzt du? Bis Delph3 kann ein Integer max. 32768 erreichen. Führende Nullen sollten eigentlich kein Problem darstellen.
Ciao HeZa |
Re: gemischter string umwandeln
auch hier kann ich dich auf die funktion explode aus der codelib verweisen: du kannst das leerzeichen als seperator verwenden und dann jeden teilstring in einen integer umwandeln, das geht immer. oder willst du den string als eine zahl?
|
Re: gemischter string umwandeln
Einfach die Nullen rauslöschen wir nicht funktionieren, da ich dann den Gesamtwert veränder.
Mein Ergebnis ist z.b.: 00040E Wenn ich jetzt die Nullen lösche, dann bekomme ich ja einen ganz anderen dez wert raus, also HEX 00040E --- Nullen gelöscht 4E ist umgewandelt in DEZ ja nicht dasselbe, schnief. Also wie? |
Re: gemischter string umwandeln
Benutze Delphi 5
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:57 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz