F_SplitPathName

F_SplitPathName 1:

Diese Funktion zerlegt einen vollständigen Pfadnamen in seine vier Einzelkomponenten. Diese werden in den durch sDrive, sDir, sFileName und sExt bezeichneten Strings gespeichert.

FUNCTION F_SplitPathName : BOOL

F_SplitPathName 2: Eingänge

VAR_INPUT
    sPathName : T_MaxString;
END_VAR

Name

Typ

Beschreibung

sPathName

T_MaxString

Vollständiger Dateiname als String (Typ: T_MaxString) in der Form: 'X:\DIR\SUBDIR\FILENAME.EXT'.

F_SplitPathName 3: Ein-/Ausgänge

VAR_IN_OUT
    sDrive    : STRING(3);
    sDir      : T_MaxString;
    sFileName : T_MaxString;
    sExt      : T_MaxString;
END_VAR

Name

Typ

Beschreibung

sDrive

STRING

Laufwerksbezeichner (Typ: T_MaxString) mit einem Doppelpunkt ('C:', 'A:' usw.)

sDir

T_MaxString

Verzeichnisname (Typ: T_MaxString) inklusive dem führenden und abschließenden Backslash ('\BC \INCLUDE\', '\SOURCE\' usw.)

sFileName

T_MaxString

Dateiname (Typ: T_MaxString)

sExt

T_MaxString

Enthält den Punkt und die Namenserweiterung des Dateinamens (Typ: T_MaxString) ('Beispiel: .C', '.EXE' usw.).

Rückgabeparameter

Beschreibung

TRUE

Kein Fehler

FALSE

Fehler. Überprüfen Sie die Funktionsparameter.

Beispiel für einen Aufruf in ST:

Der Pfadname: C:\TwinCAT\Plc\Project01\Data.txt wird in folgende Einzelkomponenten zerlegt:

sDrive: = 'C:'
sDir: '\TwinCAT\Plc\Project01\'
sFileName: 'Data'
sExt: '.txt'

PROGRAM MAIN
VAR
    bSplit     : BOOL;
    sPathName  : T_MaxString := 'C:\TwinCAT\Plc\Project01\Data.txt';
    sDrive     : STRING(3);
    sDir       : T_MaxString;
    sFileName  : T_MaxString;
    sExt       : T_MaxString;
    bSuccess   : BOOL;
END_VAR

IF bSplit THEN
    bSplit := FALSE;
    bSuccess := F_SplitPathName( sPathName := sPathName,
                sDrive := sDrive,
                sDir := sDir,
                sFileName := sFileName,
                sExt := sExt );
END_IF

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS-Bibliotheken (Kategoriegruppe)

TwinCAT v3.1.0

PC oder CX (x86, x64, ARM)

Tc2_System (System)