INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Umwandelung von String in DBL



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

09.05.2010, 15:53
Beitrag #1

H.St. Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: Apr 2010

9.03 F (32-Bit)
2010
en


Deutschland
Umwandelung von String in DBL
Hallo zusammen,

Ich habe ein Problem und hoffe auf eine Lösung. Wie kann ich ein String in ein Zahl (DBL) umwandeln. Ich habe ein kleinen Screenshot angehängt.
Das Problem hier bei ist das ich von Hex noch in Dezimal umrechnen muss und dabei die Bytes noch rotiert werden müssen. Ich hoffe das ist verständlich was ich meine.

Vielen Dank im Vorraus für eure Hilfe.

H.St.

   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
09.05.2010, 18:49
Beitrag #2

bluesaturn Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 145
Registriert seit: Jan 2010

2009
2010
en

-
United Kingdom
Umwandelung von String in DBL
Hi,
ich bin immer noch Anfaenger, aber es gibt in der String-Palette Vis zum Umwandeln, vielleicht hilft das?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
09.05.2010, 19:51
Beitrag #3

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
Umwandelung von String in DBL
Hallo H.St.,

eine Lösung anzubieten wäre viel einfacher, wenn du genau sagst, was rauskommen soll.

Du liest erst ein Byte mit einer Längenangabe, dann liest du diese Anzahl an Bytes. So weit, so gut.
Nun wandelst du jedes Byte in eine HexString-Darstellung (mit Leerzeichen zwischendrin) um. Warum, wenn du hinterher noch rechnen willst?

Willst du nicht eher zusammengehörende Bytes in eine I32 oder DBL-Zahl umwandeln? Da würde sich ein TypeCast o.ä. anbieten!
Also bitte genau sagen, welche Bytes aus dem Stream wie umgewandelt werden sollen!

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.05.2010, 00:47
Beitrag #4

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Umwandelung von String in DBL
Nimm dir Unflatten From String, aber direkt vom Visa Read Ausgang.

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.05.2010, 09:19
Beitrag #5

H.St. Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: Apr 2010

9.03 F (32-Bit)
2010
en


Deutschland
Umwandelung von String in DBL
Hallo zusammen,

Ich versuche es nochmal genauer zu erklären. Ich bin jedoch in diesen Dingen leider noch nicht so erfahren. Ich bekomme folgenden Output aus dem Gerät:
14 00 65 F4 01 00 00 58 1B 00 00 02 ED 13 00 01 00 00 00 E4 als HEX. Interessieren in diesem Fall tut mich folgender Part F4 01 00 00 dieser muss umgerechnet werden in
00 00 01 F4 um den wahren Wert (500) zu erhalten und dann müßte das ganze noch in DBL (500 müßte in dem Fall raus kommen) umgerechnet werden.

Deshalb nehme ich den String am Anfang auseinander. Ich hoffe das dies zur Klärung beiträgt.

@eg: Mit dem Befehl Unflatten String komme ich leider nicht zurecht.

Vielen Dank für die Hilfe
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.05.2010, 09:53
Beitrag #6

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
Umwandelung von String in DBL
Hallo H.St.,

folgende Vorgehensweise:
- die 4 Bytes/Zeichen aus dem String ausschneiden (per StringSubset)
- anschließen an UnflattenFromString, als Typ eine I32-Konstante anschließen, byte order entsprechend vorgeben => als Ergebnis erhälst du deine Integerzahl
- diesen Integer an ein "normales" ConvertToDBL anschließen

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.05.2010, 14:18 (Dieser Beitrag wurde zuletzt bearbeitet: 10.05.2010 15:35 von Lucki.)
Beitrag #7

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
Umwandelung von String in DBL
Also so (2 Möglichkeiten):
   
Ob als Typ eine U32- oder I32- Konstante anzuschließen ist, muß Du selbst wissen, je nachden ob die Zahlen vorzeichenbehaftet sind oder nicht. Beim Wert 500 kommt in beiden Fällen das Gleiche heraus.

BTW: In der Hilfe zu "Unflatten from String" steht: Für die Typwandlung sollte man Typecast verwenden. Ist das so zu verstehen, das "Unflatten From String" nur noch eine Altlast ist, die man besser vermeiden sollte?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Gehe zu: