HexToStr ??? ;-)



  • Moin schoen Dienstag Abend alle zusammen,
    ich habe wieder einmal eine kleine Frage.

    ich habe eine HEX Zahl die z.b. 3 byte lang ist. z.B. '02 AA FF'
    Diese Hex Zahl ist in einer Binärdatei abgelegt. mit FileOpen öffne ich diese datei ... usw.
    Nun möchte ich gerne diesen 3 byte Wert in eine z.b. EditBox geschreiben haben, jedoch direkt in der HEX Form und nicht als Integer ....
    Sowas wie HexToStr gibts da ja nicht ..

    Also kurz gesagt in der EditBox soll direkt '02 AA FF' stehen.
    Editierbar sollte das später auch sein .. aber das würde ich dann auch nach kleinen Denkanstößen noch hinbekommen :-]

    Ich freue mich wie immer auf jeden Tip

    THX

    Cu AJ



  • Du kannst doch jedes Byte einzeln einlesen und dann IntToHex benutzen.



  • hmm ok werd ich mal probieren, aber gibt es denn keine einfachere Methode?



  • Hallo AJ2000,

    ich bin mir nicht sicher ob ich dich richtig verstanden habe. In diener Datei steht die Zahl binär du möchtetst die in den string '02 AA FF' umwandeln und dann anzeigen. Mein Vorschlag:

    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
    	AnsiString		astr;
    	int			ihex	= 0x02AAFF;
    
    	astr.sprintf("%6.6x", ihex);
    	Label1->Caption = astr;
    
    }
    

    Evi48



  • so ich habs jetzt doch noch slebst hinbekommen :-]
    ich lese die Hex Werte einfach aus der Binärdatei aus und zwar als CHAR.

    Soweit hatte ich das schon hinbekommen .. nur erschien in der Edit Box Kauerwälsch.
    Bis mir irgendwann einfiel, dass ich nur Positive Characters verwenden kann.
    Oder habt ihr schonmal Asccii Characers gesehen die in Negativen Wertebereich liegen 🙂

    Also die Rätsels Lösung bestand einfach darin ein "unsigned char " zum auslesen zu verwengen fertig :-]

    Wer den Code benötigt kann mich ja fragen bis denn

    Und Frohe Ôstèrn


Anmelden zum Antworten