TOC »
- Module (chicken pathname)
- absolute-pathname?
- decompose-pathname
- make-pathname
- make-absolute-pathname
- pathname-directory
- pathname-file
- pathname-extension
- pathname-replace-directory
- pathname-replace-file
- pathname-replace-extension
- pathname-strip-directory
- pathname-strip-extension
- normalize-pathname
- directory-null?
- decompose-directory
- Windows specific notes
Module (chicken pathname)
This module provides procedures for manipulating paths. If you want to operate on the files and directories which the paths represent, see Module (chicken file).
absolute-pathname?
- absolute-pathname? PATHNAMEprocedure
Returns #t if the string PATHNAME names an absolute pathname, and returns #f otherwise.
decompose-pathname
- decompose-pathname PATHNAMEprocedure
Returns three values: the directory-, filename- and extension-components of the file named by the string PATHNAME. For any component that is not contained in PATHNAME, #f is returned.
make-pathname
make-absolute-pathname
- make-pathname DIRECTORY FILENAME #!optional EXTENSIONprocedure
- make-absolute-pathname DIRECTORY FILENAME #!optional EXTENSIONprocedure
Returns a string that names the file with the components DIRECTORY, FILENAME and (optionally) EXTENSION with SEPARATOR being the directory separation indicator (usually / on UNIX systems and \ on Windows, defaulting to whatever platform this is running on). DIRECTORY can be #f (meaning no directory component), a string or a list of strings. FILENAME and EXTENSION should be strings or #f. make-absolute-pathname returns always an absolute pathname.
pathname-directory
pathname-file
pathname-extension
- pathname-directory PATHNAMEprocedure
- pathname-file PATHNAMEprocedure
- pathname-extension PATHNAMEprocedure
Accessors for the components of PATHNAME. If the pathname does not contain the accessed component, then #f is returned.
pathname-replace-directory
pathname-replace-file
pathname-replace-extension
- pathname-replace-directory PATHNAME DIRECTORYprocedure
- pathname-replace-file PATHNAME FILENAMEprocedure
- pathname-replace-extension PATHNAME EXTENSIONprocedure
Return a new pathname with the specified component of PATHNAME replaced by a new value.
pathname-strip-directory
pathname-strip-extension
- pathname-strip-directory PATHNAMEprocedure
- pathname-strip-extension PATHNAMEprocedure
Return a new pathname with the specified component of PATHNAME stripped.
normalize-pathname
- normalize-pathname PATHNAME #!optional PLATFORMprocedure
Performs a simple "normalization" on the PATHNAME, suitably for PLATFORM, which should be one of the symbols windows or unix and defaults to on whatever platform is currently in use. All relative path elements and duplicate separators are processed and removed. If NAME ends with a / or is empty, the appropriate slash is appended to the tail.
No directories or files are actually tested for existence; this procedure only canonicalises path syntax.
directory-null?
- directory-null? DIRECTORYprocedure
Does the DIRECTORY consist only of path separators and the period?
DIRECTORY may be a string or a list of strings.
decompose-directory
- decompose-directory DIRECTORYprocedure
Returns 3 values: the base-origin, base-directory, and the directory-elements for the DIRECTORY.
- base-origin
- a string or #f. The drive, if any.
- base-directory
- a string or #f. A directory-separator when DIRECTORY is an absolute-pathname.
- directory-elements
- a list-of string or #f. The non-directory-separator bits.
DIRECTORY is a string.
- On Windows (decompose-directory "c:foo/bar") => "c:" #f ("foo" "bar")
Windows specific notes
Use of UTF8 encoded strings for pathnames is not supported. Windows uses a 16-bit UNICODE encoding with special system calls for wide-character support. Only single-byte string encoding can be used.
Previous: Module (chicken module)