LabVIEWForum.de
Backslash im String platzieren - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Backslash im String platzieren (/Thread-Backslash-im-String-platzieren)



Backslash im String platzieren - Philipp1988 - 20.01.2016 11:31

Hallo ich beschäftige mich erst seit kurzem mit Labview und hab natürlich ein kleines Problem wo ich zurzeit nicht weiter komme. Ich hoffe ihr könnt mir helfen.

Folgendes ich möchte gerne eine ganzzahlige, positive Zahl zwischen 200 und 8.500 über das Frontpanel eingeben und als Hexadezimalzahl in einem String wieder ausgeben. Dabei soll der Ausgabestring wie folgt aussehen *H\03\E8\r. Wenn ihr euch mein VI an sehet klappt das mit dem String1 ganz gut. Problem nur ich habe keine Lust für jeden Wert von 200 bis 8.500 einen Case-Fall zu erzeugen. Meine Idee war es den Eingabewert in eine Hexadezimalzahl umzuwandeln, zu teilen und dann an die entsprechenden Stellen das Backslash einzufügen. Problem war nur immer wenn ich ein Backslash eingefügt habe kamen automatisch immer zwei Backslash.

Ich hab leider keine Idee mehr was ich tun soll, könnt ihr mir weiter helfen?


RE: Backslash im String platzieren - GerdW - 20.01.2016 11:41

Hallo Philipp,

einfach FormatIntoString mit einem passenden Formatstring:
[attachment=55111]


RE: Backslash im String platzieren - Philipp1988 - 20.01.2016 11:56

Hallo GerdW,

vielen Dank für deine schnelle Antwort. Ich hab gleich deinen Vorschlag ausversucht bekomme aber immer noch zwei Backslash statt einem sieht jetzt so aus *H\\03\\E8\\r. Kannst du mir mal bitte dein VI schicken oder hast du was umgestellt?


RE: Backslash im String platzieren - jg - 20.01.2016 12:00

Dann steht deine String Anzeige offenbar auf "Display-Style" '\' Codes Display. Stell auf Normalanzeige um.

Gruß, Jens


RE: Backslash im String platzieren - Lucki - 20.01.2016 13:53

Du hast Deine Frage zwar klar formuliert, aber ich kann mir nicht vorstellen, dass irgendein Gerät so einen komischen String fordert. Mich beschleicht der Verdacht, dass Du in dem Manual des Gerätes etwas nicht richtig verstanden hast. Daß z.B. "\r" nicht zwei Stringzeichen sind, sondern für Wagenrücklauf (HEX10) steht. Poste doch einfach mal die betreffende Stelle aus dem Manual, dann werden wir sehen.


RE: Backslash im String platzieren - Philipp1988 - 20.01.2016 14:45

Danke ich hab es geschafft jetzt läuft es. Noch mal danke für eure Hilfe Guru1
hier meine Lösung für mein Problem


RE: Backslash im String platzieren - GerdW - 20.01.2016 20:57

Hallo Philipp,

warum arbeitest du mit DBL-Werten, wenn du "ganzzahlige, positive Zahl(en) zwischen 200 und 8.500" verwendest? Nimm U16/U8 stattdessen!

Und wenn du schon mit BuildArray arbeitest, kannst du das CR (=0x0D) auch gleich dort anhängen:
[attachment=55116]


RE: Backslash im String platzieren - Lucki - 20.01.2016 22:37

Die ganze Stringfolge ist suspekt. Das Zeilenendezeichen \r kann nämlich ebenso in den vorangehenden beiden Datenbytes vorkommen (hier sind alle Zeichen 0..255 möglich). Ebenso die Zeichen "*" und "H". Wenn diese Zeichen also bei der Datenübertragung zur Synchronisation benutzt werden, dann geht das in die Hose.