filelib.h| Functions | |
| Opens a dialog that allows the user to choose a file from the specified path. | |
| Creates a new directory for the specified path. | |
| Creates a new directory for the specified path. | |
| Adds an extension to a file name if none already exists. | |
| Deletes the specified file. | |
| Expands a filename into a canonical name for the platform. | |
Returns true if the specified file exists. |
|
| Returns size of specified file or -1 if no such file exists. | |
| Returns the canonical name of a file found using a search path. | |
| Returns an absolute filename for the current directory. | |
| Returns the standard directory path separator used on this platform. | |
Returns the extension of filename. |
|
| Returns all but the last component of a path name. | |
Returns the root of filename. |
|
| Returns the standard search path separator used on this platform. | |
| Returns the last component of a path name. | |
| Returns the operating system's temporary directory path as a string. | |
Returns true if the specified file is a directory. |
|
Returns true if the specified file is a regular file. |
|
| Returns an alphabetized vector of the files in the specified directory. | |
| Determines whether the filename matches the specified pattern. | |
Opens the filestream stream using the specified filename. |
|
Reads the entire contents of a filestream and returns them as a string. |
|
| Reads the entire contents of a filestream and returns them as a vector of lines. | |
| Renames a file. | |
| Moves an input stream back to its beginning so it can be read again. | |
| Changes the current directory to the specified path. | |
| Writes the given text to the specified file. | |
bool openFile(ifstream& stream, string filename); bool openFile(ofstream& stream, string filename);
stream using the specified
filename. If the operation
succeeds, openFile returns true;
if it fails, openFile sets the failure flag in the
stream and returns false. If stream is of type ifstream, the file
is opened for reading; if of type ofstream, it is opened for writing.
Usage:
if (openFile(stream, filename)) ...
string readEntire(istream& is);
string. The client is responsible for
opening and closing the stream.
Usage:
string data = readEntire(is);
Vector<string> readLines(istream& is);
Usage:
Vector<string> lines = readLines(is);
string chooseFilenameDialog(string title, string path);
title parameter is displayed in the dialog title.
The path parameter is used to set the working directory;
if path does not appear, chooseFilenameDialog
uses the current directory.
Usage:
string filename = chooseFilenameDialog("Choose a file");
string getRoot(string filename);
filename. The root consists
of everything in filename up to the last dot and
the subsequent extension. If no dot appears in the final component
of the filename, getRoot returns the entire name.
Usage:
string root = getRoot(filename);
string getExtension(string filename);
filename. The extension
consists of the separating dot and all subsequent characters.
If no dot exists in the final component, getExtension
returns the empty string. These semantics ensure that concatenating
the root and the extension always returns the original filename.
Usage:
ext = getExtension(filename);
string getHead(string filename);
getHead("a/b") = "a" getTail("a/b") = "b"
getHead("a") = "" getTail("a") = "a"
getHead("/a") = "/" getTail("/a") = "a"
getHead("/") = "/" getTail("/") = ""
Usage:
head = getHead(filename);
string getTail(string filename);
getHead function.
Usage:
tail = getTail(filename);
string getTempDirectory();
"/tmp" or "/var/tmp"
and on a Windows system it is often something like "C:\Users\YourUserName\Local Settings\Temp".
Usage:
string tempdir = getTempDirectory();
string defaultExtension(string filename, string ext);
extension argument begins with a leading *,
any existing extension in filename is replaced by
ext.
Usage:
string newname = defaultExtension(filename, ext);
string findOnPath(string searchpath, string filename);
findOnPath returns the empty string.
Usage:
string pathname = findOnPath(searchpath, filename);
void deleteFile(string filename);
error.
Usage:
deleteFile(filename);
void renameFile(string oldname, string newname);
error in the implementation.
Usage:
renameFile(oldname, newname);
bool fileExists(string filename);
true if the specified file exists.
Usage:
if (fileExists(filename)) ...
int fileSize(string filename);
Usage:
int n = fileSize(filename);
bool isFile(string filename);
true if the specified file is a regular file.
Usage:
if (isFile(filename)) ...
bool isDirectory(string filename);
true if the specified file is a directory.
Usage:
if (isDirectory(filename)) ...
void setCurrentDirectory(string path);
Usage:
setCurrentDirectory(filename);
string getCurrentDirectory();
Usage:
string filename = getCurrentDirectory();
void createDirectory(string path);
createDirectory function does not report an error if
the directory already exists. Unlike createDirectoryPath,
createDirectory does not create missing directories
along the path. If some component of path does
not exist, this function signals an error.
Usage:
createDirectory(path);
void createDirectoryPath(string path);
path do not exist, this function creates
them as needed.
Usage:
createDirectoryPath(path);
string expandPathname(string filename);
Usage:
string pathname = expandPathname(filename);
Vector<string> listDirectory(string path);
. and .. are excluded from the list.
Usage:
Vector<string> filenames = listDirectory(path);
bool matchFilenamePattern(string filename, string pattern);
? Matches any single character * Matches any sequence of characters [...] Matches any of the specified characters [^...] Matches any character except the specified onesThe last two options allow a range of characters to be specified in the form
a-z.
Usage:
if (matchFilenamePattern(filename, pattern)) ...
string getDirectoryPathSeparator();
Usage:
string sep = getDirectoryPathSeparator();
string getSearchPathSeparator();
Usage:
string sep = getSearchPathSeparator();
void rewindStream(istream& stream);
clear member function on the stream to reset any flags such as the fail flag, then calling the seekg member function to move the stream's internal cursor back to its beginning.
Usage:
rewindStream(stream);
bool writeEntireFile(string filename, string text, bool append = false);
append parameter is passed with a true value, adds the given text to the end of the file.
If append is omitted or false, overwrites any previous contents of the file.
If the file cannot be opened or written, returns false, otherwise returns true.
Usage:
writeEntireFile(filename, text);