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 

Messwerte aus txt-Datei einlesen



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!

26.01.2007, 17:05
Beitrag #1

Puka Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: Jan 2007

8.00 Student
2006
kA

01796
Deutschland
Messwerte aus txt-Datei einlesen
Hallo alle zusammen. Mein erstes Posting Rolleyes
Ich habe jetzt im Rahmen meines Elektrotechnik-Studiums mit LabVIEW zu tun. Das klappt auch alles so weit recht gut.
Jetzt bin ich aber auf ein Problem gestoßen, bei dem ich nicht so recht weiter weiß.

Und zwar muss ich eine txt-Datei einlesen, in der sich Messwerte befinden. Die Datei habe ich zum besseren Verständnis als Anhang angefügt.
Ich möchte die Datei Zeile für Zeile von Anfang bis Ende durchgehen und die jeweils auf einer jeden Zeile stehenden Werte separat in drei 1-D-Arrays einlesen.
Leider ist mein LabVIEW-Latein an diesem Punkt zu Ende, sodass ich hoffe, hier in diesem Forum Hilfe zu finden.
Wäre echt klasse, wenn mir einer helfen könnte.
Schonmal danke im Voraus

Martin


Angehängte Datei(en)
Sonstige .txt  Strom.txt (Größe: 5,6 KB / Downloads: 1489)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.01.2007, 19:23
Beitrag #2

dc6xs Offline
registered alien
****


Beiträge: 762
Registriert seit: Aug 2006

6.1,7.00
2006
kA

79106
Sonstige
Messwerte aus txt-Datei einlesen
' schrieb:Hallo alle zusammen. Mein erstes Posting Rolleyes
Ich habe jetzt im Rahmen meines Elektrotechnik-Studiums mit LabVIEW zu tun. Das klappt auch alles so weit recht gut.
Jetzt bin ich aber auf ein Problem gestoßen, bei dem ich nicht so recht weiter weiß.

Und zwar muss ich eine txt-Datei einlesen, in der sich Messwerte befinden. Die Datei habe ich zum besseren Verständnis als Anhang angefügt.
Ich möchte die Datei Zeile für Zeile von Anfang bis Ende durchgehen und die jeweils auf einer jeden Zeile stehenden Werte separat in drei 1-D-Arrays einlesen.
Leider ist mein LabVIEW-Latein an diesem Punkt zu Ende, sodass ich hoffe, hier in diesem Forum Hilfe zu finden.
Wäre echt klasse, wenn mir einer helfen könnte.
Schonmal danke im Voraus

Martin

Erstmal herzlich willkommen hier im LVF!


Mein Beitrag zu einem ähnlichem Problem

Allerdings könnte der letzte Wert in der ersten Zeile Deiner Dateien ein paar Probleme machen (meine das -------). Kann/Darf man das 0 setzen ?

Hoffe das hilft Dir weiter,
Gruß, Rob

PS: auch ET-ler ;-)

Bitte Beachten:
Die obenstehenden Texteile können unter Umständen Sarkasmus und Ironie enthalten, für nicht erkannten Sarkasmus oder nicht erkannte Ironie wird keine Haftung übernommen.

N.B.:
"Multiple exclamation marks, " he went on, shaking his head, "are a sure sign of a deseased mind." - Terry Pratchett
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.01.2007, 19:56 (Dieser Beitrag wurde zuletzt bearbeitet: 26.01.2007 20:08 von Lucki.)
Beitrag #3

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

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
Messwerte aus txt-Datei einlesen
Ebenfalls Herzlich Willkommen!
Ja, wenn es sich bei Deiner Datei um einen sog. "Tabellenstring" handeln würde, dann wäre die Sache ganz einfach, dafür gibt es die Funktion "Aus Tabellenkalkulationsdatei lesen". Wenn möglich, würde ich an Deiner Stelle versuchen, das Format entsprechend abzuändern, und zwar so: Statt unterschiedlicher Anzahl Leerzeichen (oder neben diese Leerzeichen) sollen Trennzeichen zwischen die Zahlen einer Zeile, z.B. Tabs (default) oder Kommas oder Semikolon. (Ja, auch ein Leerzeichen wären als Trennzeichen möglich, aber wenn, dann dürfte es nur eines zwischen jeder Zahl sein)

Es macht aber nichts, so wandle ich Deine Datei eben erst einmal um - Nachteil nur, daß Du es schwer haben wirst diesen Schritt zu verstehen (es geht darum, daß nicht jedes einzelne Leerzeichen in ein TAB gewandelt wird. Das + im Suchstring ist ein Spezialzeichen und bedeutet, daß das (Im Suchstring nicht sichtbare vorangestellte Leerzeichen) gehäuft vorkommen darf).

Wenn Du die Dimension (oder ist es das Zeichen für milli?) in der zweiten Spalte retten willst, so ist das möglich, aber dann wird es wieder etwas komplizierter.

Ludwig


Angehängte Datei(en)
Sonstige .vi  Puka.vi (Größe: 14,3 KB / Downloads: 1488)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.01.2007, 21:54
Beitrag #4

Puka Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: Jan 2007

8.00 Student
2006
kA

01796
Deutschland
Messwerte aus txt-Datei einlesen
Hallo Lucki,
genau so habe ich mir das vorgestellt. Durch die Angabe %10.3f habe ich es sogar noch hinbekommen, die Nachkommastellen zu erfassen.
Eine Frage habe ich jedoch noch, denn deine Vermutung bewahrheitet sich. Das kleine "m" steht für Milli und muss erhalten bleiben. Ich habe jetzt auch schon dein VI erweitert, sodass das Leerzeichen zwischen der Zahl und dem "m" verschwindet, nur leider wird es eben noch nicht mit eingelesen. Wenn du dafür noch eine Lösung hättest, wäre das klasse.

Martin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.01.2007, 23:52
Beitrag #5

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

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
Messwerte aus txt-Datei einlesen
' schrieb:Wenn du dafür noch eine Lösung hättest, wäre das klasse.
1. Das Leerzeichen muß weg, wie Du schon sagtest
2. Das richtige Fomatzeichen muß dann heißen %p (anstatt %f)

PS: Ein Formatangabe wie %10.3f hat meines Wissens nur Bedeutung bei der Formatierung von Zahl nach String, aber nicht umgekehrt. Wenn Du eine Zahl so formatieren willst, dann mit der rechten Maustaste auf die Anzeige --> Format und Genauigkeit. Die Zahl wird aber dann auch nicht gerundet, das betrifft nur die Anzeige, die interne Representation z.B als double bleibt davon unberührt. Wenn Du wirklich eine Zahl (und nicht die Stringdarstellung einer Zahl) z.B auf drei Stellen nach dem Koma runden willst, dann geht das mathematisch und nicht mit Formatierung: Die Zahl mal 1000 nehmen, auf ganze Zahl runden, dann wieder durch 1000 dividieren. Oder so: Die Zahl mit Formatierungszeichen in einen String umwandeln, dann wieder rückkonvertieren.


Angehängte Datei(en)
Sonstige .vi  Puka2.vi (Größe: 14,97 KB / Downloads: 848)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.01.2007, 10:12
Beitrag #6

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
Messwerte aus txt-Datei einlesen
Hallo Lucki,

was macht denn das " +" und das "t" beim ersten Search and Replace String? Macht das die Leerzeichen weg? "+" habe ich nämlich keins gesehen zum Ersetzen.

Gruß Markus

' schrieb:1. Das Leerzeichen muß weg, wie Du schon sagtest
2. Das richtige Fomatzeichen muß dann heißen %p (anstatt %f)

PS: Ein Formatangabe wie %10.3f hat meines Wissens nur Bedeutung bei der Formatierung von Zahl nach String, aber nicht umgekehrt. Wenn Du eine Zahl so formatieren willst, dann mit der rechten Maustaste auf die Anzeige --> Format und Genauigkeit. Die Zahl wird aber dann auch nicht gerundet, das betrifft nur die Anzeige, die interne Representation z.B als double bleibt davon unberührt. Wenn Du wirklich eine Zahl (und nicht die Stringdarstellung einer Zahl) z.B auf drei Stellen nach dem Koma runden willst, dann geht das mathematisch und nicht mit Formatierung: Die Zahl mal 1000 nehmen, auf ganze Zahl runden, dann wieder durch 1000 dividieren. Oder so: Die Zahl mit Formatierungszeichen in einen String umwandeln, dann wieder rückkonvertieren.

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
28.01.2007, 11:18
Beitrag #7

Puka Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: Jan 2007

8.00 Student
2006
kA

01796
Deutschland
Messwerte aus txt-Datei einlesen
Hallo Markus, genau das macht es. Es entfernt ein oder mehrere hintereinander stehende Leerzeichen und ersetzt diese durch ein tab-Zeichen.
Auch dir Lucki nochmals vielen Dank. Das VI funktioniert echt so, wie ich es mir vorgestellt habe.
Es leben die Forums im Internet Rolleyes Bisher haben sie mir nur bei LaTeX geholfen und nun auch noch bei LabVIEW...
Also dann, bis zu einer meiner vielleicht bald kommenden Fragen.

Martin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.01.2007, 11:21
Beitrag #8

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
Messwerte aus txt-Datei einlesen
Achso, dann ist das "+" quasi ein Platzhalter, der hintereinanderkommende gleiche Zeichen zusammenfasst? Würde dann "d+ alle "d" hintereinander zusammenfassen und dann durch ein Tabulator (t) ersetzen?

Gruß Markus

EDIT: Juhu, das war mein 700. Beitrag. Lol

' schrieb:Hallo Markus, genau das macht es. Es entfernt ein oder mehrere hintereinander stehende Leerzeichen und ersetzt diese durch ein tab-Zeichen.
Auch dir Lucki nochmals vielen Dank. Das VI funktioniert echt so, wie ich es mir vorgestellt habe.
Es leben die Forums im Internet Rolleyes Bisher haben sie mir nur bei LaTeX geholfen und nun auch noch bei LabVIEW...
Also dann, bis zu einer meiner vielleicht bald kommenden Fragen.

Martin

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.01.2007, 17:19 (Dieser Beitrag wurde zuletzt bearbeitet: 28.01.2007 17:24 von Lucki.)
Beitrag #9

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

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
Messwerte aus txt-Datei einlesen
' schrieb:Achso, dann ist das "+" quasi ein Platzhalter, der hintereinanderkommende gleiche Zeichen zusammenfasst? Würde dann "d+ alle "d" hintereinander zusammenfassen und dann durch ein Tabulator (t) ersetzen?
Gruß Markus
EDIT: Juhu, das war mein 700. Beitrag. Lol
Ja, das Ganze findet man, wenn man die Hilfe zu den betreffenden VIs aufruft und von dort aus "fortgeschrittener regulärer Ausdruck" anklickt. Das ist aber a) so kompliziert, dass ich auch nicht alles verstehe, und b) ist das Fatale an der Sache, dass die Deutung gewisser Zeichen als Sonderzeichen Standard ist. Wenn man das nicht weiß - und so ist es mir und anderen hier im Forum gegangen (und woher sollte man das wissen?) -, dann wundert man sich, dass ein Suchausdruck anders funktioniert als erwartet und sucht stundenlang, woran das liegen könnte. Gottseidank habe ich das hinter mir.

Hier ging es aber nicht darum, wie man die unerwünschte Interpretation als Sonderzeichen vermeidet, sondern wie man sie anwendet.
Die Aufgabe war: Zwischen den Daten einer Zeile steht eine unterschiedliche Anzahl von Leerzeichen als Trennzeichen. Ein Leerzeichen kann zwar durchaus als Trennzeichen dienen, aber wenn es mehrere sind, dann ist das schlecht. Gleichzeitig hat man noch ein anderes Problem: Eine Zahlenstring hat "m" für "milli" angehängt, und zwischen Zahl und m ist ein Leerzeichen. Dieses Leerzeichen soll natürlich nicht in einen Tab verwandelt werden, um Gegenteil, es soll weg.
Mir ist keine Lösung eingefallen, wie man das in einem Schritt machen könnte, deshalb wird "suchen und ersetzen" zweimal ausgeführt:
1. Schritt: Suchen nach "Leerzeichen Leerzeichen +" --> ersetzen durch Tab. Das heißt, es müssen mindesten 2 Leerzeichen aufeinanderfolgen, ein einzelnes Leerzeichen erfüllt nicht die Bedingung des Ausdrucks und wird nicht ersetzt.
1. Schritt: Es ist nur das Leerzeichen vor dem "m" übrig geblieben, das wird entfernt.

Zum 700. Beitrag meine herzlichen Glückwunsch!

Ludwig
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.01.2007, 20:11
Beitrag #10

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
Messwerte aus txt-Datei einlesen
Hi.

Das ist ja tricky. ;)Mir ging es auch mal so (anderes Thema hier), dass ich was gesucht, aber nicht gefunden habe. Da habe ich nach 9,9E+37 gesucht und da war auch das "doofe" Plus das Problem.
Das nächste Mal weiß ich das jetzt (hoffentlich) auch.
Danke für die ausführliche Info.

Gruß Markus

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Messwerte aus UM232H (USB) jede ms in TDMS Datei schreiben BenBaeumker 19 9.833 23.07.2021 10:55
Letzter Beitrag: GerdW
  Nur bestimmte Messwerte in Datei schreiben Olli169 6 5.064 16.08.2017 11:22
Letzter Beitrag: Olli169
  Messwerte in Datei schreiben antwort 2 4.820 12.12.2016 14:31
Letzter Beitrag: antwort
  nur Teil aus txt Datei einlesen hubem14 10 7.413 21.07.2016 09:45
Letzter Beitrag: hubem14
  Nachkommastellen abgeschnitten beim einlesen einer csv-datei in ein array noled 2 4.885 02.12.2015 16:37
Letzter Beitrag: noled
  .log Datei in Labview einlesen und graphisch darstellen CHD 12 10.445 22.03.2015 19:59
Letzter Beitrag: Lucki

Gehe zu: