Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   gemischter string umwandeln (https://www.delphipraxis.net/33275-gemischter-string-umwandeln.html)

skaven 4. Nov 2004 10:14


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

Dani 4. Nov 2004 10:19

Re: gemischter string umwandeln
 
Du könntest die Leerzeichen mit StringReplace rausschneiden:

Delphi-Quellcode:
StringReplace('04 05 07 09', ' ', '', [rfReplaceAll]) = '04050709'

skaven 4. Nov 2004 10:21

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?

skaven 4. Nov 2004 10:29

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?

Dani 4. Nov 2004 10:43

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:
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);
Neue Leerzeichen einfügen geht mit Delphi-Referenz durchsuchenInsert

choose 4. Nov 2004 10:44

Re: gemischter string umwandeln
 
Sieh mal in der OH unter Delphi-Referenz durchsuchenStrToInt und Delphi-Referenz durchsuchenInsert nach.

HeZa 4. Nov 2004 10:45

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

Meflin 4. Nov 2004 10:51

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?

skaven 4. Nov 2004 10:53

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?

skaven 4. Nov 2004 10:53

Re: gemischter string umwandeln
 
Benutze Delphi 5


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:30 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz