Autor Beitrag
Christoph Englmann
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 276



BeitragVerfasst: Mo 30.01.06 12:52 
hallo,

ich weiss, es gibt viele threads zu diesem thema, doch keiner konnte mir eine antwort liefern und ich probier nun schon seit 2 tagen rum:

ich möchte einfach nur zu einem ascii zeichen den zugehörigen hexadezimahlcode ermitteln...

z.B. hab ich das Zeichen
'M' -> hier möchte ich dann als ergebnis 4D erhalten.


hilfe
danke christoph
AXMD
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 4006
Erhaltene Danke: 7

Windows 10 64 bit
C# (Visual Studio 2019 Express)
BeitragVerfasst: Mo 30.01.06 12:55 
Suchst du das hier?

ausblenden Delphi-Quelltext
1:
IntToHex(Ord('M'));					


AXMD
Christoph Englmann Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 276



BeitragVerfasst: Mo 30.01.06 13:11 
hallo,

danke, prinzipiell ja nur hab ich das problem, dass ich hier kein M reinschreiben kann sondern eine zeichen, dass in einer variablen gespeichert ist...

z.B.
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
var
  test :string;
  hexwert :string;

begin
  test := copy('hansdampf',5,1);
  hexwert := intToHex(Ord(test),2);
end;


-> wenn ich anstatt test 'M' eingebe, dann funktionierts....
mit der variablen test allerdings erscheint die fehlermeldung inkompatible typen...


danke
christoph
AXMD
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 4006
Erhaltene Danke: 7

Windows 10 64 bit
C# (Visual Studio 2019 Express)
BeitragVerfasst: Mo 30.01.06 13:14 
Ord funktioniert ja auch nur für ordinale Tyen, nicht für Strings -_-

AXMD
azubi_20
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 593

WinXP SP2, Ubuntu 8.4
D7 Enterp., D2005 Prof., Java (Eclipse 3.4.0)
BeitragVerfasst: Mo 30.01.06 13:15 
sprich : deklariere test als char, dann funktionierts...
Christoph Englmann Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 276



BeitragVerfasst: Mo 30.01.06 13:23 
saublöde frage:

wie haut das dann mit der copy funktion hin?
die liefert mir ja nen string zurück.
diesen kann ich ja test (der ja nun char deklariert ist) nicht zuweisen...

danke
AXMD
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 4006
Erhaltene Danke: 7

Windows 10 64 bit
C# (Visual Studio 2019 Express)
BeitragVerfasst: Mo 30.01.06 13:24 
Und wieso nimmst du nicht einfach nur das erste Zeichen des Strings, der zurückgegeben wurde :?:

AXMD
Christoph Englmann Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 276



BeitragVerfasst: Mo 30.01.06 13:31 
check ich jetzt nicht ganz....

ich will aus einem text mit einer schleife nacheinander die zeichen einzeln in hex umwandeln...
jetzt hab ich aber wie gesagt das problem, dass wenn ich test als char deklariere meine copy funktion nicht mehr funktioniert...

wäre echt sehr dankbar für ne kurze konkrete hilfe...
Jetstream
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 222



BeitragVerfasst: Mo 30.01.06 13:31 
user profile iconChristoph Englmann hat folgendes geschrieben:
hallo,

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
var
  test :string;
  hexwert :string;

begin
  test := copy('hansdampf',5,1);
  hexwert := intToHex(Ord(test),2);
end;


musste ändern in
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
var
  hexwert :string;

begin
  hexwert := intToHex(Ord(test[1]));
end;

da ein String ja auch nur ein Array aus Chars ist.
was sollte eigentlich die letzte "2" in "hexwert := intToHex(Ord(test),2);" ?
AXMD
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 4006
Erhaltene Danke: 7

Windows 10 64 bit
C# (Visual Studio 2019 Express)
BeitragVerfasst: Mo 30.01.06 13:34 
user profile iconJetstream hat folgendes geschrieben:
was sollte eigentlich die letzte "2" in "hexwert := intToHex(Ord(test),2);" ?


Siehe OH: Hexzahl immer auf 2 Stellen anzeigen

AXMD
Christoph Englmann Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 276



BeitragVerfasst: Mo 30.01.06 14:40 
super... danke, dass wars

muchas gracias