LabVIEWForum.de - Hex-String in Datei schreiben

LabVIEWForum.de

Normale Version: Hex-String in Datei schreiben
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo,

ich habe folgendes Problem: mein Messgerät gibt mir als Rückgabewert Hex-Strings. Diese würde ich gerne in diesem Format in eine Datei speichern. Jedoch konvertiert es mir meine Hex-Antwort immer in Zeichen, sodass ich diese nicht mehr lesen kann bzw. Probleme damit haben.

Wie kann ich dies umsetzten? Muss ich meine Stringts im Hex-Format irgendwie formatieren?

Vielen Dank

sumsi
Hallo sumsi,

wenn du "lesbare" Hexwerte (also nur die Zeichen 0-9 & A-F) haben willst, musst du deine Werte wohl formatieren.
Zum Glück gibt es da eine Funktions-Palette, die nur Funktionen zum String-Zahl-Formatieren/Konvertieren enthält…
Hier eine von vielen Möglichkeiten:
[attachment=52039]
Gruß, Jens
Hallo,

das Beispiel von Jens geht schon recht nahe an das, was ich machen möchte. Mein Problem ist nur, dass ich meinen String nicht in Array-Form vorliegen habe sondern als String und momentan leider nicht weiß, wie ich diesen konvertieren muss um Jens Lösungsvorschlag anzuwenden bzw. das ganze umzuwandeln.

Schon mal Danke
Hallo sumsi,

String-Palette -> String-/Array-/Pfad-Konvertierung -> String nach Byte-Array
Danke, da stand ich wohl mal wieder dezent auf der Leitung!
Vielleicht wäre es hilfreich, wenn Du das Problem noch mal anders formulieren würdest. Ich z.b. verstehe nur Bahnhof, und stehe damit offensichtlich nicht allein da.
Warum ich nlchts verstehe:
Zitat: mein Messgerät gibt mir als Rückgabewert Hex-Strings. Diese würde ich gerne in diesem Format in eine Datei speichern.
Gut, das wäre ja ohne Probleme möglich. Der ankommende String hätte das genau passende Format für die Abspeicherung, eine Konvertierung erübrigt sich.
Zitat: Jedoch konvertiert es mir meine Hex-Antwort immer in Zeichen, sodass ich diese nicht mehr lesen kann bzw. Probleme damit haben.
Der Rückgabewert vom Messgerät ist also da, aber was soll das jetzt für ein "Antwort" sein, und zwar von Dir in Richtung Messgerät? Wann ist das, vor oder nach dem Rückgabewert? Und warum interessiert das überhaupt, wenn das Messgerät Deine "Antwort" intern konvertiert? Was hätte das mit der geplanten Abspeicherung zu tun?
Und was verstehst Du unter der "Konvertierung einer HEX-Antwort in Zeichen"? In was für "Zeichen"? Die Anwort besteht doch schon aus Zeichen, und zwar aus den Zeichen 0..9, A..F.

Gruß Ludwig

Edit: Inzwischen hast Du ja Löungen angekreuzt. Ja, die anderen können offensichtlich in der Zauberkugel besser lesen als ich.
Offtopic2
@Lucki:
Ich verstehe deine Rückfrage, vermute aber das übliche Problem, sobald der Begriff "HEX" in irgendeiner Protokolldokumentation auftaucht, gerade im Zusammenhang mit RS-232.
Einmal steht HEX-String für die Interpretation, die du gerade erwähnt hast, verwendet (i.e. direkt "lesbare" ASCII Zeichen sind nur 0-9, A-F, alles andere wären dann Steuerzeichen), aber vielfach sind in der Doku die übertragenen Daten im HEX-Format dokumentiert, also etwas in der Art 0x0A3031 , und auch dafür wird gerne HEX-String oder HEX-Format verwendet.
Ich tue mir da auch immer wieder schwer, eine saubere Trennlinie zu ziehen. Dieses "Begriffsproblem" wird wahrscheinlich auch nicht so schnell aussterben...

Gruß, Jens
Hallo,

hier nochmal mein Problem in der Zusammenfassung:

Ich bekomme folgende Antworten von meinem Gerät über Visa Read: 3A 5F A0 usw.

Diese wollte ich zur Detektion von Fehlern auch genau so in eine TXT-Datei schreiben.

Labview macht aber beim Schreiben dieser Strings in eine Datei die entsprechenden Ascii-Zeichen d.h. statt 3A steht in meiner Datei ein : und statt 5F ein _

Dies macht natürlich die Interpretation des ganzen um einiges schwieriger.

Mithilfe des im Screenshot abgebildeten Programms ist es mir nun möglich, die Hex-Strings auch im Format 3A ... in eine txt-Datei zu schreiben.

Ich hoffe dies hilft, um das ganze Problem samst Lösung zu verstehen.

Viele Grüße
Sumsi
Hallo sumsi,

Zitat:Labview macht aber beim Schreiben dieser Strings in eine Datei die entsprechenden Ascii-Zeichen d.h. statt 3A steht in meiner Datei ein : und statt 5F ein _
Falsch. Das macht nicht LabVIEW, sondern der Texteditor, mit dem du die Textdatei dann liest!

Zitat:Mithilfe des im Screenshot abgebildeten Programms ist es mir nun möglich, die Hex-Strings auch im Format 3A ... in eine txt-Datei zu schreiben.
Warum nicht so:
[attachment=52168]
Seiten: 1 2
Referenz-URLs