Portability Function: Breaks a file path or directory path into its components.
Module: USE IFPORT
Syntax
result = SPLITPATHQQ (path, drive, dir, name, ext)
path
(Input) Character*(*). Path to be broken into components. Forward slashes (/), backslashes (\), or both can be present in path.
drive
(Output) Character*(*). Drive letter followed by a colon.
dir
(Output) Character*(*). Path of directories, including the trailing slash.
name
(Output) Character*(*). Name of file or, if no file is specified in path, name of the lowest directory. A file name must not include an extension.
ext
(Output) Character*(*). File name extension, if any, including the leading period (.).
Results
The result type is INTEGER(4). The result is the length of dir.
The path parameter can be a complete or partial file specification.
$MAXPATH is a symbolic constant defined in module IFPORT.F90
as 260.
Compatibility
CONSOLE STANDARD GRAPHICS QUICKWIN GRAPHICS WINDOWS DLL LIB
See Also
Example
USE IFPORT
CHARACTER($MAXPATH) buf
CHARACTER(3) drive
CHARACTER(256) dir
CHARACTER(256) name
CHARACTER(256) ext
CHARACTER(256) file
INTEGER(4) length
buf = 'b:\fortran\test\runtime\tsplit.for'
length = SPLITPATHQQ(buf, drive, dir, name, ext)
WRITE(*,*) drive, dir, name, ext
file = 'partial.f90'
length = SPLITPATHQQ(file, drive, dir, name, ext)
WRITE(*,*) drive, dir, name, ext
END