HEX in Liste mit Strings.

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Benutzeravatar
2bock
User
Beiträge: 94
Registriert: Freitag 12. September 2003, 07:58
Wohnort: 50.9333300 / 6.3666700

HEX in Liste mit Strings.

Beitragvon 2bock » Mittwoch 6. September 2006, 10:51

Hallo zusammen. habe ein großes Problem.

Ich habe eine Methode in C , die Strings in Hex ausgibt. Ich möchte jetzt in Python diesen Hex- String wieder in in eine Liste mit Strings umkonvertieren. Wie mache ich dass mit struct?

Code: Alles auswählen

struct.unpack('s',val.pPythonHexDataString)


Danke schon mal für Eure Hilfe im Vorraus.

Greetz from 2bock ;-)


Nachtrag:

Ich bekomme von C eine Variable in der als char 'DA' steht. ich möchte diesen Hexstring in Ascii umwandeln. Wie mache ich das?
Zuletzt geändert von 2bock am Mittwoch 6. September 2006, 12:08, insgesamt 1-mal geändert.
BlackJack

Beitragvon BlackJack » Mittwoch 6. September 2006, 12:03

Das machst Du am besten gar nicht mit `struct`. Bevor ich jetzt Anfange zu raten: Kannst Du mal ein Beispiel zeigen? Also wie sieht so eine Hexzeichenkette aus und wie soll das gewünschte Ergebnis aussehen.
Benutzeravatar
2bock
User
Beiträge: 94
Registriert: Freitag 12. September 2003, 07:58
Wohnort: 50.9333300 / 6.3666700

Beitragvon 2bock » Mittwoch 6. September 2006, 12:28

Hi Black Jack,

in Klartext heisst der Satz/Wort "Hallo". Der soll dann in Hex konvertiert werden und wieder zurück. Ich habe gerade ein Problem mit der C-Methode. Wird gerade überarbeitet.
BlackJack

Beitragvon BlackJack » Mittwoch 6. September 2006, 14:03

Suchst Du das hier?

Code: Alles auswählen

In [32]: binascii.hexlify('Hallo')
Out[32]: '48616c6c6f'

In [33]: binascii.unhexlify('48616c6c6f')
Out[33]: 'Hallo'
Benutzeravatar
2bock
User
Beiträge: 94
Registriert: Freitag 12. September 2003, 07:58
Wohnort: 50.9333300 / 6.3666700

Beitragvon 2bock » Donnerstag 7. September 2006, 07:02

Ja danke das ist die lösung. binascii kannte ich noch gar nicht.
Danke Black Jack

Greetz from 2bock ;-)
Benutzeravatar
2bock
User
Beiträge: 94
Registriert: Freitag 12. September 2003, 07:58
Wohnort: 50.9333300 / 6.3666700

Beitragvon 2bock » Freitag 8. September 2006, 10:46

So und jetzt noch ein BProblem. Da kannst Du mir bestimmt helfen.

Ich habe z:B. folgende IP Adresse. 10.250.10.167
Ich möchte folgenden HExstring haben: 0AFA0AF5BAC0

Kannst Du mir nur nen Tip geben in welche Richtung ich suchen muss um die Lösung zu finden. Ich würde gerne selber die lösung finden, brauche aber einen Tipp dort hin.

Herzlichen Danke ;-)
BlackJack

Beitragvon BlackJack » Freitag 8. September 2006, 11:43

Äh, das ist ja ein nettes Ratespielchen. Die ersten 3 Bytes, also die ersten 6 Zeichen sind einfach, aber warum die vierte Zahl aus der IP-Adresse dann den Rest ergeben soll, weiss ich nicht.

Ich hätte eher folgendes erwartet:

Code: Alles auswählen

In [17]: ip = '10.250.10.167'

In [18]: ''.join(['%02X' % int(x) for x in ip.split('.')])
Out[18]: '0AFA0AA7'
Benutzeravatar
2bock
User
Beiträge: 94
Registriert: Freitag 12. September 2003, 07:58
Wohnort: 50.9333300 / 6.3666700

Beitragvon 2bock » Freitag 8. September 2006, 11:48

Danke BlackJack,
OK. ich werde mir das mal genauer anschauen.

Danke Nochmal.
Benutzeravatar
Joghurt
User
Beiträge: 877
Registriert: Dienstag 15. Februar 2005, 15:07

Beitragvon Joghurt » Freitag 8. September 2006, 12:43

Übrigens ist die Dotnotation nur eine andere Darstellung der IP-Adresse.
Man kann (außer vielleicht bei MS-Produkten) auch die IP-Adresse direkt angeben.

Z.B. Ein google.de-Server hat 66.102.9.104.
Also führt http://0x42660968 und http://1113983336 da auch hin.

Wer ist online?

Mitglieder in diesem Forum: Bing [Bot]