Problem mit ASCII-Hex
Verfasst: 22. September 2009 12:11
Hi
Ich habe ein Feld reply vom Typ uns. char - in reply steht E8, reply[i+1] 01 - das sind hexwerte die mir aber bei QT in einem QString eingelesen in ASCII-Hexwerte umgewandelt werden - ich mus die Werte jedoch verbinden zu 01e8 da die 1. Stelle das Vorz und die weiteren 3 Stellen der eigentliche Wert ist - wie mach ich das in qt am besten das ich das Feld i & i+1 verbinde und dann 1 Stelle und die weiteren 3 trenne und umrechne? in c+++ hatte ich es mit String* und substring gelöst aber in qt bekomm ich immer nur direkt die ASCII Zeichen der Werte ( bei E8 232) thx
Grüsse
Mein c++ Code, hoffe ich bin smit net im falschem Forum ;)
for(int i=0, j=1; i<189;i+=2, j++)
{ String *wert, *vorz;
float dezwert;
wert = String::Concat(reply[i+1].ToString("x2"),reply.ToString("x2"));
vorz= wert->Substring(0,1);
wert= wert->Substring(1,3);
dezwert=hex_to_dez(wert,vorz);
LB_ueber->Items->Add(String::Concat(j.ToString(),": ",dezwert.ToString()));
;
}
Ich habe ein Feld reply vom Typ uns. char - in reply steht E8, reply[i+1] 01 - das sind hexwerte die mir aber bei QT in einem QString eingelesen in ASCII-Hexwerte umgewandelt werden - ich mus die Werte jedoch verbinden zu 01e8 da die 1. Stelle das Vorz und die weiteren 3 Stellen der eigentliche Wert ist - wie mach ich das in qt am besten das ich das Feld i & i+1 verbinde und dann 1 Stelle und die weiteren 3 trenne und umrechne? in c+++ hatte ich es mit String* und substring gelöst aber in qt bekomm ich immer nur direkt die ASCII Zeichen der Werte ( bei E8 232) thx
Grüsse
Mein c++ Code, hoffe ich bin smit net im falschem Forum ;)
for(int i=0, j=1; i<189;i+=2, j++)
{ String *wert, *vorz;
float dezwert;
wert = String::Concat(reply[i+1].ToString("x2"),reply.ToString("x2"));
vorz= wert->Substring(0,1);
wert= wert->Substring(1,3);
dezwert=hex_to_dez(wert,vorz);
LB_ueber->Items->Add(String::Concat(j.ToString(),": ",dezwert.ToString()));
;
}