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 

Dateien einlesen - Wahl der eigene Formate



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!

19.03.2007, 11:06
Beitrag #1

fidel Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 247
Registriert seit: Aug 2006

8.00 // 8.2.1 // 8.5
2006
de

76185
Deutschland
Dateien einlesen - Wahl der eigene Formate
Hallo,

ich will in meinem Programm eigene Dateien einlesen.
Diese Dateien sollen letzlich Zahlen beinhalten die in eine Tabelle importiert werden sollen

Ich denke das einfachste ist einfaches *.txt als Quell-Format

Was bietet sich dort an Zwecks Unterschediung der Daten ?

Meine Grundidee war:
--
Wert 1a; Wert1b; Wert1c; Wert1d;.....Wert1X;
Wert 2a; Wert 2b; Wert2c; Wert2d;....Wert2x;

D.h. eigentlich kein spezielles Trennzeichen für jede neue Tabellen-Zeile.
Führt dies zu Problemen ? Ist es nicht besser ein Trennzeichen für Werte innerhalb einer Zeile und ein Trennzeichen für Zeilen-Trennung zu definieren ?

Eure Ideen & Vorschläge sind herzlichst willkommen

Im Optimalfall würde ich meine Datei auch mit Kommentaren versehen koennen,
d.h. Zeilen mit Anführenden "#" o.ä. werden nicht interpretiert.

Gruss
fidel

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
19.03.2007, 11:36 (Dieser Beitrag wurde zuletzt bearbeitet: 19.03.2007 11:37 von Achim.)
Beitrag #2

Achim Offline
*****
*****


Beiträge: 4.222
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
Dateien einlesen - Wahl der eigene Formate
Hi,

du kannst das machen wie ein DachdeckerTongue...

Für die Kommentare würde sich dein Format natürlich gut eignen...

Trotzdem würde ich bei der klassischen Tabellenform bleiben, d.h.

Wert1a "TAB" Wert2a "TAB" Wert3a...
Wert1b "TAB" Wert2b "TAB" Wert3b...

Das bietet sich an, weil LV mit "Read Spreadsheet" die Zeichen eh schon so interpretiert, und mit "Write Spreadsheet" auch so schreibt...so wie's auch in Excel erwartet würde. Dein Trennzeichen ist ebenfalls egal, nur Leerzeichen sind nicht so doll!

Für die Kommentare könntest du einen Header einfügen, der nicht interpretiert wird...

Um deine Dateien schnell zu finden, würde ich evtl. eine andere Endung definieren, z.B. *.fidel

Wenn du die Dateien nicht im Klartext lesen können willst (z.B. mit dem Editor o.ä.), könntest du auch einfach Binärfiles (Write Binary) mit beliebigem (!) Format und Inhalt schreiben: Z.B. ein Array aus Clustern (Kommentar als String, Daten als numerisches Array), d.h. in jedem Arrayelement befindet sich ein eigener Datensatz mit eigenem Kommentar. Das ganze sollte wohl auch als XML-String gehen und ist evtl. ein wenig zeitgemäßer...


Gruss
Achim

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
19.03.2007, 14:08
Beitrag #3

fidel Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 247
Registriert seit: Aug 2006

8.00 // 8.2.1 // 8.5
2006
de

76185
Deutschland
Dateien einlesen - Wahl der eigene Formate
Hi Achim,

also du würdest einfach nur:
Zitat:10.00 22.00 00.00 17.01
22.11 00.12 01.12 12.23
ohne explizite Angabe eines Trennzeichen innerhalb der Zeile, bzw nur des Tabulators.
Die Zeilen dann nur mittels CR getrennt halten.
Das mit der eigenen Dateiendung hatte ich mir auch schon so gedacht.


ok, ich grübel mal noch ne runde weiter.

Wie immer vielen Dank für deine Hilfe

Gruss
fidel



' schrieb:Hi,

du kannst das machen wie ein DachdeckerTongue...

Für die Kommentare würde sich dein Format natürlich gut eignen...

Trotzdem würde ich bei der klassischen Tabellenform bleiben, d.h.

Wert1a "TAB" Wert2a "TAB" Wert3a...
Wert1b "TAB" Wert2b "TAB" Wert3b...

Das bietet sich an, weil LV mit "Read Spreadsheet" die Zeichen eh schon so interpretiert, und mit "Write Spreadsheet" auch so schreibt...so wie's auch in Excel erwartet würde. Dein Trennzeichen ist ebenfalls egal, nur Leerzeichen sind nicht so doll!

Für die Kommentare könntest du einen Header einfügen, der nicht interpretiert wird...

Um deine Dateien schnell zu finden, würde ich evtl. eine andere Endung definieren, z.B. *.fidel

Wenn du die Dateien nicht im Klartext lesen können willst (z.B. mit dem Editor o.ä.), könntest du auch einfach Binärfiles (Write Binary) mit beliebigem (!) Format und Inhalt schreiben: Z.B. ein Array aus Clustern (Kommentar als String, Daten als numerisches Array), d.h. in jedem Arrayelement befindet sich ein eigener Datensatz mit eigenem Kommentar. Das ganze sollte wohl auch als XML-String gehen und ist evtl. ein wenig zeitgemäßer...
Gruss
Achim

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
19.03.2007, 15:05
Beitrag #4

Achim Offline
*****
*****


Beiträge: 4.222
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
Dateien einlesen - Wahl der eigene Formate
Hi Fidel,

mit deinen Werten kann ich irgendwie nix anfangen...was soll das sein?

Der TAB ist ein "explizites" Trennzeichen zwischen den Werten, und ja mit CR oder CRLF werden die Zeilen getrennt. Das LF kann man sich sparen, das kommt ja noch von der Schreibmaschine (LF = Line Feed = Neue Zeile = Ra... / CR = Carriage Return = Wagenrücklauf = ...Tsching). Viele Programme erwarten das halt (noch)...

Tschö
A.

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
19.03.2007, 15:29
Beitrag #5

fidel Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 247
Registriert seit: Aug 2006

8.00 // 8.2.1 // 8.5
2006
de

76185
Deutschland
Dateien einlesen - Wahl der eigene Formate
' schrieb:....
mit deinen Werten kann ich irgendwie nix anfangen...was soll das sein?
...
A.

ging mir mit deinen ähnlichBig Grin

Das waren einfach nur Beispielzahlen...mehr nicht.
Ich werd das ganze jetzt einfach mal mit TAB innerhalb der Zeile und CR zwischen den Zeilen versuchen


danke nochmal
gruss
fidel

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.03.2007, 09:56 (Dieser Beitrag wurde zuletzt bearbeitet: 20.03.2007 09:59 von fidel.)
Beitrag #6

fidel Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 247
Registriert seit: Aug 2006

8.00 // 8.2.1 // 8.5
2006
de

76185
Deutschland
Dateien einlesen - Wahl der eigene Formate
Hallo,

irgendwie hänge ich mal wieder fest.
Ich sehe 3-4 möglichkeiten von einer Datei zu lesen wenn ich in der LV Hilfe suche.

Wollte eigentlich die von dir erwähnte Tabellen-Funktion nehmen, siehe Bild.

Meine BeispielDatei ist wie zuvor besprochen, habe sie auch nochmal mit dne Infos der Hilfe abgestimmt.

Nur kriege ich den Output nicht wieder in meine LabVIEW Tabelle rein, bzw. verbunden / verkabelt
Kann mir jmd den erfolderlichen Zwischenschritt mittels Stichwort andeuten ?

Problem sind mal wieder die verschiedenen Datentypen:
Der Typ der Datenquelle ist 2-D Array von Double [64-Bit Reell (~15 Stellen Genauigkeit)].
Der Typ der Datensenke ist 2-D Array von String.

Nur wie konvertiere ich das ?


Danke im vorraus
fidel


Angehängte Datei(en) Thumbnail(s)
   

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.03.2007, 10:59
Beitrag #7

Achim Offline
*****
*****


Beiträge: 4.222
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
Dateien einlesen - Wahl der eigene Formate
Hi,

du könntest deine Tabelle mit der Funktion "Number to fractional string" (Palette String >> Conversion) einfach umwandeln...die Funktion ist polymorph, d.h. sie akzeptiert auch 2D-Arrays

Alternativ könntest du mal in die Read-Funktion reingucken...da wird eh schon ein String gelesen und dann erst in ein 2D-Array gewandelt...du könntest das VI nach deinen Bedürfnissen abändern (also die Wandlung rausschmeißen) und dann - WICHTIG - unter "MyRead" abspeichern...

Gruss
Achim

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.03.2007, 11:34 (Dieser Beitrag wurde zuletzt bearbeitet: 20.03.2007 11:46 von fidel.)
Beitrag #8

fidel Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 247
Registriert seit: Aug 2006

8.00 // 8.2.1 // 8.5
2006
de

76185
Deutschland
Dateien einlesen - Wahl der eigene Formate
' schrieb:du könntest deine Tabelle mit der Funktion "Number to fractional string" (Palette String >> Conversion) einfach umwandeln...die Funktion ist polymorph, d.h. sie akzeptiert auch 2D-Arrays
....
Kann ich leioder nicht, da die Tabelle noch von anderne Funktionen verwendet wird und dann dürfte ich dort wieder anfangen anzupassen


' schrieb:Alternativ könntest du mal in die Read-Funktion reingucken...da wird eh schon ein String gelesen und dann erst in ein 2D-Array gewandelt...du könntest das VI nach deinen Bedürfnissen abändern (also die Wandlung rausschmeißen) und dann - WICHTIG - unter "MyRead" abspeichern...

Ok dieser Weg hört sich sinnig in meinem Fall an, mal sehn ob ich in dem durcheinander zurechtkomme.....
im endeffekt wirkt es auf mich als ob der umbau quasi kaum moeglich ist, da ein grossteil der funktionen nicht auf strings ausgelegt ist :/


naja wie immer ein grosses Dank an deine gute Hilfe

Gruss
fidel

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.03.2007, 11:49
Beitrag #9

Achim Offline
*****
*****


Beiträge: 4.222
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
Dateien einlesen - Wahl der eigene Formate
' schrieb:Kann ich leioder nicht, da die Tabelle noch von anderne Funktionen verwendet wird und dann dürfte ich dort wieder anfangen anzupassen

Aber natürlich geht das...direkt nach dem Lesen wandelst du von 2D-numeric nach 2D-string = Tabelle, und umgekehrt direkt vor dem Schreiben! Was du sonst noch mit den Tabellenwerten machst, ist doch hier gar nicht relevant!

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.03.2007, 11:57 (Dieser Beitrag wurde zuletzt bearbeitet: 20.03.2007 12:05 von fidel.)
Beitrag #10

fidel Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 247
Registriert seit: Aug 2006

8.00 // 8.2.1 // 8.5
2006
de

76185
Deutschland
Dateien einlesen - Wahl der eigene Formate
klingt sinnig, wenn ich jetzt noch diese **** umwandlungsfunktionen in der vielzahl von konvertierungsoptionen finde.
ist mir echt unverständlich wie man ein menü so aufbauen kannBig Grin
hinzukommt DE LV vs. EN LV, wobei da die kontexthilfe immerhin ein ansatz is


danke nochmal achim.

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Eigene Unit definieren BassSportler 4 4.183 06.04.2010 13:39
Letzter Beitrag: BsaiboT

Gehe zu: