Login
`
Templates, Tools and Utilities
|
||
Add a comment to an Icetips ArticlePlease add your comments to this article.
Please note that you must provide both a name and a valid email address in order
for us to publish your comment. Comments are moderated and are not visible until they have been approved. Spam is never approved!
Back to article list Search Articles Add Comment Printer friendly Direct link Par2: Useful API Functions 1998-07-27 -- Frank Piscopo Prototypes of the following Clarion Runtime API Calls are declared in
CLIB.CLW - use the following embed:
Inside the Global Map
INCLUDE('CLIB.CLW')
For a complete list of all the documented calls, refer to Chapter 14 of the
Programmer's Guide.
-----------------------------------------------------
LOW-LEVEL FILE FUNCTIONS:
Access(*CSTRING,SHORT),SHORT
Usage: IF Access(p,a) ...
where p is the path to check, in a C-string,
and a is the access mode (use ff_: equates in EQUATES.CLW)
Purpose: Tests whether a file or directory can be accessed in
the specified mode (can be used for file existence tests).
API_Remove(*CSTRING),SHORT
Usage: IF API_Remove(p) ...
where p is pathname of the file to remove, in a C-string.
Purpose: Deletes a file (not a directory; for this, refer to RmDir below).
API_Rename(*CSTRING,*CSTRING),SHORT
Usage: IF API_Rename(p1,p2) ...
where p1 is the original filename in a C-string,
and p2 is the new filename in a C-string.
Purpose: Renames a file or directory.
FnSplit(*CSTRING,*CSTRING,*CSTRING,*CSTRING,*CSTRING),SHORT
Usage: IF FnSplit(p,v,d,n,e) ...
where p is a pathname to split, in a C-string,
v is a C-string to receive the DRIVE letter,
d is a C-string to receive the DIRECTORY,
n is a C-string to receive the FILENAME,
e is a C-string to receive the EXTENSION.
Purpose: Splits a pathname into the various parts as listed above.
I should assume that unspecified parts in p are
taken from the current default directory and drive.
MkDir(*CSTRING),SHORT
Usage: IF MkDir(d) ...
where d is the directory pathname, in a C-string.
Purpose: Creates a new directory, specified by d.
RmDir(*CSTRING),SHORT
Usage: IF RmDir(d) ...
where d is the directory pathname, in a C-string.
Purpose: Deletes a directory, which presumably should be empty.
--- All the above functions return a SHORT to indicate success or failure of the function.
STRING FUNCTIONS:
IsAscii(SHORT),SHORT
Usage: IF IsAscii(VAL(c)) ...
where c is any one-character constant or string variable.
Purpose: Tests whether c is an ASCII character.
IsCntrl(SHORT),SHORT
Usage: IF IsCntrl(VAL(c)) ...
where c is any one-character constant or string variable.
Purpose: Tests whether c is a control character.
IsDigit(SHORT),SHORT
Usage: IF IsDigit(VAL(c)) ...
where c is any one-character constant or string variable.
Purpose: Tests whether c is a numeric digit character.
IsGraph(SHORT),SHORT
Usage: IF IsGraph(VAL(c)) ...
where c is any one-character constant or string variable.
Purpose: Tests whether c is a printable character, excluding SPACE.
IsPrint(SHORT),SHORT
Usage: IF IsPrint(VAL(c)) ...
where c is any one-character constant or string variable.
Purpose: Tests whether c is a printable character, including SPACE.
IsPunct(SHORT),SHORT
Usage: IF IsPunct(VAL(c)) ...
where c is any one-character constant or string variable.
Purpose: Tests whether c is a punctuation character.
IsSpace(SHORT),SHORT
Usage: IF IsSpace(VAL(c)) ...
where c is any one-character constant or string variable.
Purpose: Tests whether c is a white-space character (space, tab, CR, LF, FF).
IsXDigit(SHORT),SHORT
Usage: IF IsXDigit(VAL(c)) ...
where c is any one-character constant or string variable.
Purpose: Tests whether c is a hex digit (like IsDigit() plus A,B,C,D,E,F).
StrCSpn(*CSTRING,*CSTRING),USHORT
Usage: IF StrCSpn(c1,c2) ...
where c1 and c2 are C-string variables.
Purpose: Finds the first occurance in c2 of any character in c1
(don't take my word for this one; the meaning of c1 and c2 may be swapped).
StrSpn(*CSTRING,*CSTRING),USHORT
Usage: IF StrCSpn(c1,c2) ...
where c1 and c2 are C-string variables.
Purpose: Finds the first character in c2 which IS NOT in c1
(ditto, meaning of c1 and c2 may be swapped).
StrRev(*CSTRING),CSTRING
Usage: c1 = StrRev(c2)
where c1 and c2 are C-string variables.
Purpose: Returns the reverse of a string
(StrRev('Reverse') returns 'esreveR')
--- Most of the above functions can be used in user-written functions
to make them more useful to test whole strings. For example,
one could write something like the following to test whether a
string is free of non-printable characters:
!----------------------------------------------
IsPrintS PROCEDURE(s)
l LONG,AUTO
i LONG,AUTO
CODE
l = LEN(CLIP(s))
LOOP i = 1 TO l
IF ~IsPrint(VAL(s[i])) THEN RETURN FALSE.
END
RETURN TRUE
!----------------------------------------------
Today is November 21, 2024, 7:05 am This article has been viewed 35198 times.
|
|