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!
Ich habe leider in der Suche nichts passendes gefunden. Dazu kommt noch das "Problem", dass ich nur LabVIEW 6 zum programmieren besitze, hoffe aber trotzdem, dass mir jemand helfen kann.
Ich möchte aus einer txt./dat. -Datei folgendes auslesen:
Die erste Zahl ist die x-Komponente, die zweite die y-Komponente. Getrennt sind diese durch ein Komma. Jetzt möchte ich diese Datei einlesen, den Graphen plotten lassen und die x- und y-Komponente getrennt voneinander bearbeiten können. In LabVIEW 2012 ist dies für mich kein Problem, allerdings gibts das von mir verwendete VI in LabVIEW 6 noch nicht. Deswegen muss ich das mit den "älteren" VIs machen. Mein ersten Versuche liefern mir leider entweder nur die erste Zeile oder ich bekam einen String den ich nicht richtig zerlegen konnte. Wie kann ich LabVIEW sagen, dass es in jeder Zeile die Zahl vor dem Komma und die danach separieren soll, dies in jeder Zeile und mir dann als Array/Cluster/... ausgeben?
Kann mir einer Dabei helfen?
Wie gesagt benutze LabVIEW 6 (englisch).
Viele Grüße, shaltow
Anzeige
27.02.2013, 20:50 (Dieser Beitrag wurde zuletzt bearbeitet: 27.02.2013 20:53 von GerdW.)
auch LabVIEW6 kannte schon die Funktion SpreadsheetStringToArray. Also:
- Textdatei komplett lesen,
- mit besagter Funktion und dem Formatstring "%.;%f" in ein DBL-Array umwandeln
- 1. und 2. Spalte indizieren...
vielen Dank. Ich habe jetzt nur noch ein Problem. Die eingelesenen Werte haben alle nur zwei Nachkommastellen, ich bräuchte aber alle Stellen. Das von dir verwendete VI zum Einlesen der Datei finde ich gerade nicht, ich verwende "Read Characters From File". Liegt es daran oder muss man noch irgendeinen Befehl angeben, damit er alle Stellen angibt?
Gruß shaltow
27.02.2013, 21:29 (Dieser Beitrag wurde zuletzt bearbeitet: 27.02.2013 21:30 von GerdW.)
Rechtsklick auf die numerische Anzeige und Formatierung ändern? Einfach mehr Nachkommastellen anzeigen lassen!?
Das solltest du aber in deiner LabVIEW-Nutzung schon gelernt haben (egal ob LV2012 oder LV6)...
P.S.:
Bitte Profil anpassen, wenn du normalerweise (?) LV2012 verwendest...
Wenn ich jetzt die Daten aus dem Array abfragen und plotten will, würde ich dies über eine While-Schleife machen. Dafür muss ich angeben wie oft ich diese durchführen lassen will. Aber nicht jede Datei hat genau gleich viele Einträge und somit auch die Arrays nicht. Kann ich irgendwie der While-Schleife sagen, dass die Werte aus den Arrays nur solange abfragt werden sollen bis die Datei am Ende angelangt ist?
Zitat:Wenn ich jetzt die Daten aus dem Array abfragen und plotten will, würde ich dies über eine While-Schleife machen.
Abgesehen von NWOs richtiger Antwort:
Du liegst falsch, wenn du eine While-Loop verwenden würdest. Schließlich willst du doch ein "FOR each element in array DO ..." programmieren! Und da kommt das Auto-Indexing der FOR-Loop ins Spiel, das automatisch ein Element nach dem anderen abarbeitet. Auch das solltest du mit deiner LabVIEW-Erfahrung schon gehört haben...