QFileInfo - System-independent file information
#include <qfileinfo.h>
Public Members
enum PermissionSpec { ReadUser = 0400, WriteUser = 0200,
ExeUser = 0100, ReadGroup = 0040, WriteGroup = 0020,
ExeGroup = 0010, ReadOther = 0004, WriteOther = 0002,
ExeOther = 0001 }
QFileInfo ()
QFileInfo ( const QString & file )
QFileInfo ( const QFile & )
QFileInfo ( const QDir &, const QString & fileName )
QFileInfo ( const QFileInfo & )
~QFileInfo ()
QFileInfo& operator= ( const QFileInfo & )
void setFile ( const QString & file )
void setFile ( const QFile & )
void setFile ( const QDir &, const QString & fileName )
bool exists () const
void refresh () const
bool caching () const
void setCaching ( bool )
QString filePath () const
QString fileName () const
QString absFilePath () const
QString baseName () const
QString extension ( bool complete = TRUE ) const
QString dirPath ( bool absPath = FALSE ) const
QDir dir ( bool absPath = FALSE ) const
bool isReadable () const
bool isWritable () const
bool isExecutable () const
bool isRelative () const
bool convertToAbs ()
bool isFile () const
bool isDir () const
bool isSymLink () const
QString readLink () const
QString owner () const
uint ownerId () const
QString group () const
uint groupId () const
bool permission ( int permissionSpec ) const
uint size () const
QDateTime lastModified () const
QDateTime lastRead () const
DESCRIPTION
The QFileInfo class provides system-independent file
information.
position (path) in the file system, its access rights and
whether it is a directory or a symbolic link. Its size and
last modified/read times are also available.
To speed up performance QFileInfo caches information about
the file. Since files can be changed by other users or
programs, or even by other parts of the same program there
is a function that refreshes the file information;
refresh(). If you would rather like a QFileInfo to access
the file system every time you request information from
it, you can call the function setCaching( FALSE ).
A QFileInfo can point to a file using either a relative or
an absolute file path. Absolute file paths begin with the
directory separator ('/') or a drive specification (not
applicable to UNIX). Relative file names begin with a
directory name or a file name and specify a path relative
to the current directory. An example of an absolute path
is the string "/tmp/quartz". A relative path might look
like" src/fatlib". You can use the function isRelative()
to check if a QFileInfo is using a relative or an absolute
file path. You can call the function convertToAbs() to
convert a relative QFileInfo to an absolute one.
If you need to read and traverse directories, see the QDir
class.
Examples: i18n/main.cpp dirview/main.cpp
MEMBER FUNCTION DOCUMENTATION
QFileInfo::QFileInfo ()
Constructs a new empty QFileInfo.
QFileInfo::QFileInfo ( const QDir & d, const QString & fileName )
Constructs a new QFileInfo that gives information about
the file named fileName in the directory d.
If the directory has a relative path, the QFileInfo will
also have one.
See also isRelative().
QFileInfo::QFileInfo ( const QFile & file )
Constructs a new QFileInfo that gives information about
file.
If the file has a relative path, the QFileInfo will also
have one.
See also isRelative().
QFileInfo::QFileInfo ( const QString & file )
Constructs a new QFileInfo that gives information about
relative file path.
See also bool, setFile(QString, ), isRelative(),
QDir::setCurrent() and QDir::isRelativePath().
QFileInfo::QFileInfo ( const QFileInfo & fi )
Constructs a new QFileInfo that is a copy of fi.
QFileInfo::~QFileInfo ()
Destructs the QFileInfo.
QString QFileInfo::absFilePath () const
Returns the absolute path name.
The absolute path name is the file name including the
absolute path. If the QFileInfo is absolute (i.e. not
relative) this function will return the same string as
filePath().
Note that this function can be time-consuming under UNIX.
(in the order of milliseconds on a 486 DX2/66 running
Linux).
See also isRelative() and filePath().
QString QFileInfo::baseName () const
Returns the base name of the file.
The base name consists of all characters in the file name
up to (but not including) the first '.' character. The
path is not included.
Example:
QFileInfo fi( "/tmp/abdomen.lower" );
QString base = fi.baseName(); // base = "abdomen"
See also fileName() and extension().
bool QFileInfo::caching () const
Returns TRUE if caching is enabled.
See also setCaching() and refresh().
bool QFileInfo::convertToAbs ()
Converts the file path name to an absolute path.
If it is already absolute nothing is done.
See also filePath() and isRelative().
QDir QFileInfo::dir ( bool absPath = FALSE ) const
Returns the directory path of the file.
QDir will be relative, otherwise it will be absolute.
See also dirPath(), filePath(), fileName() and
isRelative().
QString QFileInfo::dirPath ( bool absPath = FALSE ) const
Returns the directory path of the file.
If absPath is TRUE an absolute path is always returned.
See also dir(), filePath(), fileName() and isRelative().
bool QFileInfo::exists () const
Returns TRUE if the file pointed to exists, otherwise
FALSE.
Examples: i18n/main.cpp
QString QFileInfo::extension ( bool complete = TRUE ) const
Returns the extension name of the file.
If complete is TRUE (the default), extension() returns the
string of all characters in the file name after (but not
including) the first '.' character. For a file named
"archive.tar.gz" this returns "tar.gz".
If complete is FALSE, extension() returns the string of
all characters in the file name after (but not including)
the last '.' character. For a file named "archive.tar.gz"
this returns "gz".
Example:
QFileInfo fi( "lex.yy.c" );
QString ext = fi.extension(); // ext = "yy.c"
QString ext = fi.extension( FALSE ); // ext = "c"
See also fileName() and baseName().
QString QFileInfo::fileName () const
Returns the name of the file, the file path is not
included.
Example:
QFileInfo fi( "/tmp/abdomen.lower" );
QString name = fi.fileName(); // name = "abdomen.lower"
See also isRelative(), filePath(), baseName() and
extension().
QString QFileInfo::filePath () const
Returns the name, i.e. the file name including the path
See also isRelative() and absFilePath().
Examples: dirview/main.cpp
QString QFileInfo::group () const
Returns the group the file belongs to.
On systems where files do not have groups this function
always returns 0.
Note that this function can be time-consuming under UNIX
(in the order of milliseconds on a 486 DX2/66 running
Linux).
See also groupId(), owner() and ownerId().
uint QFileInfo::groupId () const
Returns the id of the group the file belongs to.
On systems where files do not have groups this function
always returns ((uind) -2).
See also group(), owner() and ownerId().
bool QFileInfo::isDir () const
Returns TRUE if we are pointing to a directory or a
symbolic link to a directory.
See also isFile() and isSymLink().
bool QFileInfo::isExecutable () const
Returns TRUE if the file is executable.
See also isReadable(), isWritable() and permission().
bool QFileInfo::isFile () const
Returns TRUE if we are pointing to a real file.
See also isDir() and isSymLink().
bool QFileInfo::isReadable () const
Returns TRUE if the file is readable.
See also isWritable(), isExecutable() and permission().
bool QFileInfo::isRelative () const
Returns TRUE if the file path name is relative to the
current directory, FALSE if the path is absolute (e.g.
under UNIX a path is relative if it does not start with a
'/').
According to Einstein this function should always return
bool QFileInfo::isSymLink () const
Returns TRUE if we are pointing to a symbolic link.
See also isFile(), isDir() and readLink().
bool QFileInfo::isWritable () const
Returns TRUE if the file is writable.
See also isReadable(), isExecutable() and permission().
QDateTime QFileInfo::lastModified () const
Returns the date and time when the file was last modified.
See also lastRead().
QDateTime QFileInfo::lastRead () const
Returns the date and time when the file was last read
(accessed).
On systems that do not support last read times, the
modification time is returned.
See also lastModified().
QFileInfo & QFileInfo::operator= ( const QFileInfo & fi )
Makes a copy of fi and assigns it to this QFileInfo.
QString QFileInfo::owner () const
Returns the owner of the file.
On systems where files do not have owners this function
returns 0.
Note that this function can be time-consuming under UNIX.
(in the order of milliseconds on a 486 DX2/66 running
Linux).
See also ownerId(), group() and groupId().
uint QFileInfo::ownerId () const
Returns the id of the owner of the file.
On systems where files do not have owners this function
returns ((uint) -2).
See also owner(), group() and groupId().
bool QFileInfo::permission ( int permissionSpec ) const
Tests for file permissions. The permissionSpec argument
can be several flags of type PermissionSpec or'ed together
to check for permission combinations.
function always returns TRUE.
Example:
QFileInfo fi( "/tmp/tonsils" );
if ( fi.permission( QFileInfo::WriteUser | QFileInfo::ReadGroup ) )
qWarning( "Tonsils can be changed by me, and the group can read them.");
if ( fi.permission( QFileInfo::WriteGroup | QFileInfo::WriteOther ) )
qWarning( "Danger! Tonsils can be changed by the group or others!" );
See also isReadable(), isWritable() and isExecutable().
QString QFileInfo::readLink () const
Returns the name a symlink points to, or a null QString if
the object does not refer to a symbolic link.
This name may not represent an existing file; it is only a
string. QFileInfo::exists() returns TRUE if the symlink
points to an existing file.
See also exists(), isSymLink(), isDir() and isFile().
void QFileInfo::refresh () const
Refresh the information about the file, i.e. read in
information from the file system the next time a cached
property is fetched.
See also setCaching().
void QFileInfo::setCaching ( bool enable )
Enables caching of file information if enable is TRUE, or
disables it if enable is FALSE.
When caching is enabled, QFileInfo reads the file
information the first time
Caching is enabled by default.
See also refresh() and caching().
void QFileInfo::setFile ( const QDir & d, const QString &
fileName )
Sets the file to obtains information about to fileName in
the directory d.
If the directory has a relative path, the QFileInfo will
also have one.
See also isRelative().
void QFileInfo::setFile ( const QFile & file )
Sets the file to obtain information about.
have one.
See also isRelative().
void QFileInfo::setFile ( const QString & file )
Sets the file to obtain information about.
The string given can be an absolute or a relative file
path. Absolute file paths begin with the directory
separator (e.g. '/' under UNIX) or a drive specification
(not applicable to UNIX). Relative file names begin with a
directory name or a file name and specify a path relative
to the current directory.
Example:
#include <qfileinfo.h>
#include <qdir.h>
void test()
{
QString absolute = "/liver/aorta";
QString relative = "liver/aorta";
QFileInfo fi1( absolute );
QFileInfo fi2( relative );
QDir::setCurrent( QDir::rootDirPath() );
// fi1 and fi2 now point to the same file
QDir::setCurrent( "/tmp" );
// fi1 now points to "/liver/aorta",
// while fi2 points to "/tmp/liver/aorta"
}
See also isRelative(), QDir::setCurrent() and
QDir::isRelativePath().
uint QFileInfo::size () const
Returns the file size in bytes, or 0 if the file does not
exist if the size cannot be fetched.
SEE ALSO
http://doc.trolltech.com/qfileinfo.html
http://www.trolltech.com/faq/tech.html
COPYRIGHT
Copyright 1992-2001 Trolltech AS,
http://www.trolltech.com. See the license file included
in the distribution for a complete license statement.
AUTHOR
Generated automatically from the source code.
BUGS
If you find a bug in Qt, please report it as described in
http://doc.trolltech.com/bughowto.html. Good bug reports
In case of content or formattting problems with this
manual page, please report them to qt-bugs@trolltech.com.
Please include the name of the manual page (qfileinfo.3qt)
and the Qt version (2.3.1).
Man(1) output converted with
man2html