Hallo Leute,
ich bin mir nich sicher ob evt. soetwas schonmal besprochen wurde...
entschuldigung ebenfalls für den schlecht gewählten Thread Titel 🙁
Mein Problem ist:
ich lese eine 4 Byte große Float zahl aus und möchte sie in einen Integer umwandeln...
zuerst wandel ich den Wert
in eine string um (hab schon probiert es gleich von byte[] ->
int umzuwandeln hat jedoch auch nicht funktioniert):
string xValue = BitConverter.ToString(buffer);
dabei enthält der string dann diese Hexadezimalwerte:
(laut Debuger)
"DD-4D-DA-47"
nun möchte ich das ganze in einen Integer Wert umwandeln:
xPosi = Convert.ToInt32(xValue, 16);
jedoch bekomm ich beim umwandeln von "hexstring" zu int
die angehängte Fehlermeldung...
liegt es nun an den Trennstrichen zwischen den einzelnen Werten
oder könnte es noch ein anderes Problem geben...
ich wär euch sehr verbunden wenn ihr mir Tips geben könntet
MfG MEt45
Medieval Fantasy Online - ORPG Projekt
.NET - Try and Error - Blog - Gemeinschaftsblog
MEt45's Dev Garage - Eigener Blog
Hallo,
Warum nimmst du den Umweg über die String und wandelst die Float-Zahl nicht direkt um?
int i = Convert.ToInt32(meine_float_zahl);
Original von MEt45
hab schon probiert es gleich von byte[] ->
int umzuwandeln hat jedoch auch nicht funktioniert
erledigt das deine frage?
es funktioniert leider nicht 🙁
Medieval Fantasy Online - ORPG Projekt
.NET - Try and Error - Blog - Gemeinschaftsblog
MEt45's Dev Garage - Eigener Blog
Hallo MEt45,
naja, da steht, dass du das byte-Array nicht in int umgewandelt bekommst. Qwald schlägt vor den float direkt in den int um zuwandeln.
Ich würde das auch vorschlagen:
int i = (int)meine_float_zahl;
es funktioniert leider nicht
Das ist eine schlechte Problembeschreibung. Siehe Wie poste ich richtig? Punkt 5
herbivore
uhm es geht darum das ich keine konkrete float zahl wie z.B. 0.5 habe (dann würde ich hier nich schreiben 😉 )...
d.h. die float zahl (eine) befindet sich in dem byte array
ba[0] = 0
ba[1] = 108
ba[2] = 3
ba[3] = 10
ich hab auch schon mit dem BitConverter zu konvertieren jedoch kommen dabei falsche werte raus...
Medieval Fantasy Online - ORPG Projekt
.NET - Try and Error - Blog - Gemeinschaftsblog
MEt45's Dev Garage - Eigener Blog
Hallo MEt45,
wenn du einen float als byte-Array hast, dann musst du das mit BitConverter erst in einem float umwandeln, den du dann in einen int casten kannst.
herbivore
ist das generell so?
wenn ja dankeschön für die antwort !
MfG MEt45
Medieval Fantasy Online - ORPG Projekt
.NET - Try and Error - Blog - Gemeinschaftsblog
MEt45's Dev Garage - Eigener Blog
Hallo MEt45,
weiß nicht genau, was du mit generell meinst, aber wenn du meinst, dass wenn man eine Zahl als byte-Array hat, dass man das byte-Array erst in den Typ konvertieren muss, in dem die Zahl in dem byte-Array vorliegt, dann ja, das ist immer ein sinnvoller und nachvollziehbarer Weg.
herbivore