Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Zahl aus String in Binär /Hexadezimal umwandeln (https://www.delphipraxis.net/143563-zahl-aus-string-binaer-hexadezimal-umwandeln.html)

ThE_-_BliZZarD 18. Nov 2009 10:02


Zahl aus String in Binär /Hexadezimal umwandeln
 
Moin moin,

folgendes Problem: Ich bekomme einen String der aus Zahlen besteht (dezimalsystem) und möchte diesen gerne als unsigned integer speichern - sozusagen auf einem Bytefeld. Bis jetzt noch einfach, allerdings sollen auch Zahlen weitaus größer als 32 oder 64bit möglich sein. Das "normale" Verfahren zur Umwandlung einer Zahl wäre ja mit mod und div, aber da ich auf den großen Zahlen nicht rechnen kann, wäre eine andere Vorgehensweise gefragt.. Irgendwelche Ideen? Oder sehe ich nur den Wald vor lauter Bäumen nicht?

Mit freundlichen Grüßen,

BliZZarD

Sherlock 18. Nov 2009 10:20

Re: Zahl aus String in Binär /Hexadezimal umwandeln
 
Vorschlag zur Korrektur Deiner Überschrift: "Strings Umwandeln in große Zahlen"
Grundsätzlich kannst Du ja die Funktion Delphi-Referenz durchsuchenStrToInt64 verwenden.
Darüber hinaus kannst Du Dir ja im ersten Schritt helfen, indem Du den String in zwei Hälften teilst, und von den jeweiligen Hälften die Integer generierst. Es gibt hier im Forum einige Klassen für große Zahlen, die Dir dann weiterhelfen könnten.

Edith hat hier mal eine davon gefunden: http://www.delphipraxis.net/internal...t.php?t=158461

Sherlock

peschai 18. Nov 2009 14:17

Re: Zahl aus String in Binär /Hexadezimal umwandeln
 
Ergänzung

Schaue dir auch noch einmal die funktion an
Delphi-Quellcode:
StrToIntDef
Falls "müll" drinsteht, kannst du eine definierte zahl zurückgeben lassen

ThE_-_BliZZarD 18. Nov 2009 14:51

Re: Zahl aus String in Binär /Hexadezimal umwandeln
 
Okay danke :)

Ich werde erst eine Multiplikationsfunktion für meine Zahlen implementieren, dann die Zahl in Blöcke aufteilen, die per StrToInt64 in Binär verwandeln, dann mit dem entsprechenden Zehnerfaktor multiplizieren und aufaddieren.

Vielen Dank, der Denkanstoß hat mir gefehlt :)

himitsu 18. Nov 2009 15:02

Re: Zahl aus String in Binär /Hexadezimal umwandeln
 
Zitat:

Zitat von ThE_-_BliZZarD
Ich werde erst eine Multiplikationsfunktion für meine Zahlen implementieren, dann die Zahl in Blöcke aufteilen, die per StrToInt64 in Binär verwandeln, dann mit dem entsprechenden Zehnerfaktor multiplizieren und aufaddieren.

Das entspricht ja in etwa den Beiträgen #11 und #13 aus dem schonmal verlinkten Thread.
( http://www.delphipraxis.net/internal...t.php?t=158461 )


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:38 Uhr.

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