Funktionsblock FS_WRITE

Der Funktionsblock FS_WRITE schreibt Daten auf ein Dateisystem.

Achtung: Bereits existierende Dateien werden ohne eine Warnung überschrieben.

Das Dateisystem muss vorher mittels FS_INIT initialisiert worden sein. Alle Operationen erfolgen dabei asynchron pro angelegtem Speichermedium.

Eingang WRITE

Bei einer positiven Flanke werden die Daten auf das Speichermedium geschrieben.

Eingang DEV

Definiert das Gerät, von wo aus auf die Dateien zugegriffen werden soll. Das Gerät wird pro Projekt verwendet und kann im Kontextmenü unter Projekt Externer Speicher verwaltet werden.

Eingang PATH

Gibt den Pfad zur Datei auf dem Speichermedium an. Der Pfad entspricht dabei einem Unix-Dateipfad im UTF-8 Format, falls dieses unterstützt wird. Der Pfad wird wie folgt dargestellt:

Ordner/Unterordner/Datei.txt

Eingang DATA

Definiert die Daten, welche geschrieben werden sollen.

Eingang MODE

Gibt den Modus an, mit welchem die Datei geschrieben werden soll. Mögliche Modi sind:

Modus Beschreibung
"r" Nur zum Lesen geöffnet. Platziert den Dateizeiger auf Dateianfang.
"r+" Nur zum Lesen und Schreiben geöffnet. Platziert den Dateizeiger auf Dateianfang.
"w" Nur zum Schreiben geöffnet. Platziert den Dateizeiger auf Dateianfang. Löscht den Inhalt der Datei. Falls die Datei nicht existiert, wird diese erstellt.
"w+" Nur zum Schreiben und Lesen geöffnet. Platziert den Dateizeiger auf Dateianfang. Löscht den Inhalt der Datei. Falls die Datei nicht existiert, wird diese erstellt.
"a" Nur zum Schreiben geöffnet. Platziert den Dateizeiger auf Dateiende. Falls die Datei nicht existiert, wird diese erstellt. Die Daten werden am Ende angefügt.
"a+" Nur zum Schreiben und Lesen geöffnet. Platziert den Dateizeiger auf Dateiende. Falls die Datei nicht existiert, wird diese erstellt. Die Daten werden am Ende angefügt.
"x" Nur zum Schreiben geöffnet. Platziert den Dateizeiger auf Dateianfang. Falls die Datei existiert, wird abgebrochen.
"x+" Nur zum Schreiben und Lesen geöffnet. Platziert den Dateizeiger auf Dateianfang. Falls die Datei existiert, wird abgebrochen.
"c" Nur zum Schreiben geöffnet. Platziert den Dateizeiger auf Dateianfang. Falls die Datei nicht existiert, wird diese erstellt. Überschreibt den Inhalt der Datei.
"c+" Nur zum Schreiben und Lesen geöffnet. Platziert den Dateizeiger auf Dateianfang. Falls die Datei nicht existiert, wird diese erstellt. Überschreibt den Inhalt der Datei.

Eingang BOM

Ist der Eingang beim Schreiben wahr, so wird das UTF-8 Byte Order Mark am Anfang der Datei angefügt. Dies geschieht nur, wenn die Datei überschrieben oder neu erstellt wird. Wurde das BOM am Dateianfang nicht geschrieben, kann dies nicht im Nachhinein angefügt werden.

Ausgang DONE

Der Ausgang gibt bei Erfolg einen Impuls zurück, um die nächste Operation durchzuführen. Der Impuls erfolgt beim Beenden des Vorgangs, auch wenn ein Fehler aufgetreten ist.

Ausgang LENGTH

Gibt die Anzahl der geschriebenen Bytes zurück. Der Zustand wird für die spätere Verwendung gespeichert.

Ausgang ERROR

Gibt im Fehlerfall einen Text mit einer Fehlermeldung zurück. Dieser ist FALSE, wenn kein Fehler aufgetreten ist. Der Zustand wird für die spätere Verwendung gespeichert.

Mögliche Ursachen:

  • Der Dienst des Speichermediums wurde nicht gestartet.
  • Der Speicher wurde nicht initialisiert.
  • Die Logindaten sind ungültig.
  • Der entfernte Server konnte nicht erreicht werden.
  • Das Speichermedium existiert nicht.
  • Der angegebene Pfad ist ungültig.
  • Auf das Speichermedium kann nicht geschrieben werden.
  • Kein Speicherplatz auf dem Speicher mehr vorhanden oder der Speicher ist schreibgeschützt.