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!
08.02.2007, 17:19 (Dieser Beitrag wurde zuletzt bearbeitet: 08.02.2007 17:20 von Guybrush.)
ich bin noch ziemlich neu bei LabVIEW und vielleicht habe ich auch gerade nur Tomaten auf den Augen, doch alle Suche nach einer hilfreichen Funktion hat mir nicht weitergeholfen, deswegen frage ich hier.
Zum Problem:
Ich habe eine ASCII-Datei mit Messdaten (Tab-getrennt), die ich auch ganz gut als Spreadsheet-File einlesen und verarbeiten kann. Nun enthält diese Datei auch noch Informationen über die Meßbedingungen. Diese sind am Ende der Datei als eine "Spalte" angegeben, werden aber beim Einlesen als Spreadsheet-File ignoriert, weil es sich um einen String handelt.
Nun habe ich in meinem LabVIEW-Einführungsbuch etwas über die Funktion "Zeilen aus Datei lesen" gelesen, mit der man eine festgelegte Anzahl von Zeilen aus einer Datei, beginnend bei einem festgelegten Offset auslesen kann. Diese Funktion würde mir weiterhelfen, denke ich zumindest, aber ich finde sie einfach nicht
Es gibt zwar die Funktion "Aus Textdatei lesen", aber die liest dann eben die gesamte Datei ein, was bedeuten würde, ich müsste nochmal im String nach den entsprechenden Abschnitt suchen lassen usw usf.
Gibt es da eine einfache schnelle Lösung? Und wenn nein, habt ihr evtl. eine Idee, wie man das Problem einigermaßen elegant lösen könnte?
Danke schonmal im Voraus, ich geh solange mal weiterprobieren
Du willst Zeilen aus der Datei lesen?
Kein Problem! Das VI "Aus Textdatei lesen" ist ok. Einfach mal rechten Mausklick auf das VI und im Kontextmenü "Zeilen lesen" auswählen.
Kannst Du mal eine Beispiel Textdatei posten. Ich kann mir das mit der Spalte am Ende der Datei nicht wirklich vorstellen.
' schrieb:... am Ende der Datei als eine "Spalte" angegeben, ...
Gruß
Andreas
Geht nicht, gibts nicht!
08.02.2007, 21:09 (Dieser Beitrag wurde zuletzt bearbeitet: 08.02.2007 21:12 von Guybrush.)
So, hab mal eine "abgespeckte" Version von so einer Datei hochgeladen. Auch nur als .txt, weil .asc durfte ich nicht. Aber ich denke das Wesentliche wird deutlich
Im ersten Teil stehen in den Zeilen die x-Werte (1. Spalte) und dann mit Tabs getrennt mehrere y-Werte (zugehörig zu einer Zeitskala, die direkt im File aber nicht mitgespeichert wird). Zum Ende dann die Setup-Daten (Leerzeichengetrennt über mehrere Zeilen, deswegen "eine Spalte"), aus denen man auch die Zeitskala berechnen kann (deswegen brauch ich die so dringend.
Leider bin ich gerade zu Hause und kann deinen Tip nicht ausprobieren, werde ich jedoch morgen gleich mal tun.
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
Bestimmte Anzahl Zeilen aus ASCII-Datei einlesen
Hallo,
ich hab' Dir was gebaut. Jetzt musst Du nur noch das Array, das Du erhalten hast, indizieren (index Array), um an die einzelnen Zeilen zu kommen.
Gruß Markus
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
' schrieb:So, hab mal eine "abgespeckte" Version von so einer Datei hochgeladen. Auch nur als .txt, weil .asc durfte ich nicht. Aber ich denke das Wesentliche wird deutlich
Hallo Guybrush,
ich hab mir Dein File angesehen und weiß jetzt wie das gemeint war.
Im Anhang findes Du ein VI, mit dem ich Deine Beispieldatei eingelesen habe und den Dateiinhalt in Daten und Setup trenne.
Vielleicht hilft Dir das als Anregung.
vielen Dank für Eure Hinweise und Beispiele. Leider war ich die letzten Tage sehr krank und hatte heute auf Arbeit nur wenig Zeit, sie auszuprobieren, doch scheint das Problem auf verschiedenen Wegen lösbar zu sein. Ich werde versuchen das nach bestem Wissen und Gewissen umzusetzen und dann das Ergebnis hier posten, ich bin sicher es gibt dann noch das eine oder andere zu verbessern
Bis dahin seid gewiss, dass ihr mir schon sehr helfen konntet
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
Bestimmte Anzahl Zeilen aus ASCII-Datei einlesen
Hallo Guybrush,
viel Spaß beim Probieren und gute Besserung.
Wenn Du noch Fragen hast, wenn Du das nach "bestem Wissen und Gewissen" () programmierst, dann frag' ruhig.
Gruß Markus
PS: Ich finde es echt klasse, den Namen "Guybrush" wieder aufleben zu lassen. Es lebe Monkey Island!!
' schrieb:Hallo,
vielen Dank für Eure Hinweise und Beispiele. Leider war ich die letzten Tage sehr krank und hatte heute auf Arbeit nur wenig Zeit, sie auszuprobieren, doch scheint das Problem auf verschiedenen Wegen lösbar zu sein. Ich werde versuchen das nach bestem Wissen und Gewissen umzusetzen und dann das Ergebnis hier posten, ich bin sicher es gibt dann noch das eine oder andere zu verbessern
Bis dahin seid gewiss, dass ihr mir schon sehr helfen konntet
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
viel Spaß beim Probieren und gute Besserung.
Wenn Du noch Fragen hast, wenn Du das nach "bestem Wissen und Gewissen" () programmierst, dann frag' ruhig.
Gruß Markus
Danke
Soderle, bin dann erstmal so weit, dass ich die Daten so einlesen lassen konnte, wie ich wollte und auch die entsprechende Zeitachse schon berechnet habe. Auch die Darstellung mehrerer Spektren (im Datenfile finden sich insgesamt 75) ist mir gelungen, es werden 5 Spektren gezeigt, dazu wird vorher die Gesamtzahl der Spektren bestimmt, durch 4 (willkürlicher Wert im Moment) geteilt und dann also aus den "verbleibenden" Gesamtzahl/4 Spektren jedes Gesamtzahl/4/5-te-Spektrum dargestellt, angefangen beim ersten Spektrum. (Hat das jetzt jemand verstanden? glaube eher nicht, bei der konfusen Erklärung )
Hab das VI mal angehangen und auch noch ein richtiges Datenfile dazugepackt. Freue mich über alle Kommentare bezüglich Programmierlogik, Funktionsverwendung, Anordnung im Blockdiagramm usw usf
Zitat:PS: Ich finde es echt klasse, den Namen "Guybrush" wieder aufleben zu lassen. Es lebe Monkey Island!!
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
Bestimmte Anzahl Zeilen aus ASCII-Datei einlesen
Jetzt fehlt bloß noch das SubVI "Extract Numbers.vi", dann ist es vollständig.
Gruß Markus
' schrieb:Danke
Soderle, bin dann erstmal so weit, dass ich die Daten so einlesen lassen konnte, wie ich wollte und auch die entsprechende Zeitachse schon berechnet habe. Auch die Darstellung mehrerer Spektren (im Datenfile finden sich insgesamt 75) ist mir gelungen, es werden 5 Spektren gezeigt, dazu wird vorher die Gesamtzahl der Spektren bestimmt, durch 4 (willkürlicher Wert im Moment) geteilt und dann also aus den "verbleibenden" Gesamtzahl/4 Spektren jedes Gesamtzahl/4/5-te-Spektrum dargestellt, angefangen beim ersten Spektrum. (Hat das jetzt jemand verstanden? glaube eher nicht, bei der konfusen Erklärung )
Hab das VI mal angehangen und auch noch ein richtiges Datenfile dazugepackt. Freue mich über alle Kommentare bezüglich Programmierlogik, Funktionsverwendung, Anordnung im Blockdiagramm usw usf
Ja, da geht nix drüber
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------