LabVIEWForum.de
Abfrage Datei vorhanden (Teil vom Namen) - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenbank & File IO (/Forum-Datenbank-File-IO)
+---- Thema: Abfrage Datei vorhanden (Teil vom Namen) (/Thread-Abfrage-Datei-vorhanden-Teil-vom-Namen)

Seiten: 1 2


Abfrage Datei vorhanden (Teil vom Namen) - angry_Nameless - 15.01.2013 07:49

Hallo zusammen,

ich habe hier ein Programm, das überprüft, ob eine Datei bereits vorhanden ist, indem es versucht die Datei zu öffnen und den Fehlercode "7" auswertet.

Nun habe ich das Problem, dass die Dateinamen sich ändern und einen Timestamp (Datum und Uhrzeit) angehängt bekommen. Wenn nun die Datei "4711.tdms" geladen werden soll, diese aber "4711_2013_01_15.tdms" heisst, erkennt das System nicht, dass die DAtei schon vorhanden ist.

Gibt es eine Möglichkeit nur auf den ersten Teil (hier jetzt die ersten 4 Stellen) der Datei abzufragen?
Es gibt z.B.: die Funktion "Prüfen, ob Datei oder Ordner existiert", aber ich müsste wissen, ob man da "Wildcards" also Platzhalter einbauen kann.

Ich möchte einfach wissen, ob schon jemand die Datei 4711_x_y_z... schon angelegt hat.

Gruß aus dem Saarland


RE: Abfrage Datei vorhanden (Teil vom Namen) - Morpheus - 15.01.2013 08:20

Hallo

Es gibt bereits LabVIEW Funktionen, welche prüfen ob eine Datei bereits existiert (siehe Bild im Anhang).

Nun zu deiner eigentlichen Frage...
Du kannst dir z.B. die ganze File-Liste des entsprechenden Ordners auslesen und danach die Filenamen prüfen (Match Pattern Funktion aus der String-Palette).
Ein kleines Beispiel (Bild) dazu findest du auch im Anhang.

Wie die Funktionen in der Deutschen LabVIEW Version heissen, kann ich dir leider nicht sagen.

Gruss
Chris


RE: Abfrage Datei vorhanden (Teil vom Namen) - angry_Nameless - 15.01.2013 08:57

Super, danke für die Antwort,

genau diese Funktion habe ich vor 5 Minuten auch gefunden Smile
Es ist zwar etwas kompliziert, aber es funktioniert.


RE: Abfrage Datei vorhanden (Teil vom Namen) - GerdW - 15.01.2013 09:09

Hallo nameless,

Zitat:Es ist zwar etwas kompliziert, aber es funktioniert.
Ja, aber nur durch den massiven Einsatz von Sequenzstrukturen.

Warum nimmst du nicht einfach Drähte statt der lokalen Variablen? Warum lässt du die Terminals unbenutzt???
THINK DATAFLOW!

RubeGoldberg-Alarm: Warum gibst du im True-Case einer Casestruktur ein TRUE aus? (Ich vermute im False-Case eine FALSE-Konstante...)


RE: Abfrage Datei vorhanden (Teil vom Namen) - angry_Nameless - 16.01.2013 09:50

Hallo,

Das mit der Casestruktur ist ein Überbleibsel aus den Versuchen. Die könnte man löschen, da hast du recht.

Ich komme aus der Java-Programmierung und benutze gerne Variablen, darum keine Drähte.

Aber was meinst du mit "Terminals"?

Gruß,


Marc


RE: Abfrage Datei vorhanden (Teil vom Namen) - GerdW - 16.01.2013 09:52

Hallo Marc,

deine Fragen wurden gerade erst in einem anderen Thread geklärt...


RE: Abfrage Datei vorhanden (Teil vom Namen) - angry_Nameless - 16.01.2013 09:56

Jetzt weiss ich, was du meinst. Ich schreibe der Übersicht halber gerne die Variablen an den Anfang, das ist alles.


RE: Abfrage Datei vorhanden (Teil vom Namen) - GerdW - 16.01.2013 10:05

Hallo Marc,

Zitat: Ich schreibe der Übersicht halber gerne die Variablen an den Anfang, das ist alles.
Wo ist der "Anfang" auf einem großen weißen Blatt Papier (lies: "Blockdiagramm")?
Wo ist der Anfang, wenn alles, was nicht per DATAFLOW sequenziert ist, parallel abgearbeitet wird?

- LabVIEW arbeitet nicht "von oben nach unten" wie bei textbasierter Programmierung - und auch nicht "von links nach rechts"!
- "Lokale Variablen" sind keine Variablen wie bei textbasierte Programmierung, sondern "lokale Kopien" (leider heißen sie nicht so...)
- "Lokale Variablen" führen schnell zu RaceConditions...
- THINK DATAFLOW!


RE: Abfrage Datei vorhanden (Teil vom Namen) - angry_Nameless - 16.01.2013 12:36

Wie gesagt, ich habe verstanden, was du meintest.

Ich arbeite immer nach dem Prinzip:

eine "flache Sequenzstruktur" aufbauen und den Ablauf von links nach rechts programmieren.( Ähnlich einer Schrittkette ) und dann kommen an den "Anfang" die Variablen und deren Initialisierung.

RaceConditions habe ich so nicht zu befürchten.


RE: Abfrage Datei vorhanden (Teil vom Namen) - GerdW - 16.01.2013 12:58

Hallo Marc,

Zitat:RaceConditions habe ich so nicht zu befürchten.
Das hat der Kollege im verlinkten Thread sich wohl auch gedacht - und prompt eine Racecondition programmiert...