PTLib  Version 2.10.11
PFilePath Class Reference

This class describes a full description for a file on the particular platform. More...

#include <filepath.h>

Inheritance diagram for PFilePath:
PFilePathString PString PCharArray PBaseArray< T > PAbstractArray PContainer PObject

Public Member Functions

Construction
 PFilePath ()
 Create a file specification object. More...
 
 PFilePath (const char *cstr)
 Create a file specification object with the specified file name. More...
 
 PFilePath (const PString &str)
 Create a file specification object with the specified file name. More...
 
 PFilePath (const PFilePath &path)
 Create a file specification object with the specified file name. More...
 
 PFilePath (const char *prefix, const char *dir)
 Create a file spec object with a generated temporary name. More...
 
PFilePathoperator= (const PFilePath &path)
 Change the file specification object to the specified file name. More...
 
PFilePathoperator= (const PString &str)
 Change the file specification object to the specified file name. More...
 
PFilePathoperator= (const char *cstr)
 Change the file specification object to the specified file name. More...
 
Path addition functions
PFilePathoperator+= (const PString &str)
 Concatenate a string to the file path, modifiying that path. More...
 
PFilePathoperator+= (const char *cstr)
 Concatenate a C string to a path, modifiying that path. More...
 
PFilePathoperator+= (char ch)
 Concatenate a single character to a path. More...
 
Path decoding access functions
PFilePathString GetVolume () const
 Get the drive/volume name component of the full file specification. More...
 
PFilePathString GetPath () const
 Get the directory path component of the full file specification. More...
 
PFilePathString GetTitle () const
 Get the title component of the full file specification, eg for the DOS file "C:\SRC\PWLIB\FRED.DAT" this would be "FRED". More...
 
PFilePathString GetType () const
 Get the file type of the file. More...
 
PFilePathString GetFileName () const
 Get the actual directory entry name component of the full file specification. More...
 
PDirectory GetDirectory () const
 Get the the directory that the file is contained in. More...
 
void SetType (const PFilePathString &type)
 Set the type component of the full file specification, eg for the DOS file "C:\SRC\PWLIB\FRED.DAT" would become "C:\SRC\PWLIB\FRED.TXT". More...
 
- Public Member Functions inherited from PString
virtual PObjectClone () const
 Make a complete duplicate of the string. More...
 
virtual Comparison Compare (const PObject &obj) const
 Get the relative rank of the two strings. More...
 
virtual void PrintOn (ostream &strm) const
 Output the string to the specified stream. More...
 
virtual void ReadFrom (istream &strm)
 Input the string from the specified stream. More...
 
virtual PINDEX HashFunction () const
 Calculate a hash value for use in sets and dictionaries. More...
 
virtual PBoolean SetSize (PINDEX newSize)
 Set the size of the string. More...
 
virtual PBoolean IsEmpty () const
 Determine if the string is empty. More...
 
virtual PBoolean MakeUnique ()
 Make this instance to be the one and only reference to the container contents. More...
 
PBoolean MakeMinimumSize ()
 Set the actual memory block array size to the minimum required to hold the current string contents. More...
 
PINLINE PINDEX GetLength () const
 Determine the length of the null terminated string. More...
 
bool operator! () const
 Determine if the string is NOT empty. More...
 
bool operator*= (const PString &str) const
 Compare two strings using case insensitive comparison. More...
 
bool operator== (const PObject &str) const
 Compare two strings using the PObject::Compare() function. More...
 
bool operator!= (const PObject &str) const
 Compare two strings using the PObject::Compare() function. More...
 
bool operator< (const PObject &str) const
 Compare two strings using the PObject::Compare() function. More...
 
bool operator> (const PObject &str) const
 Compare two strings using the PObject::Compare() function. More...
 
bool operator<= (const PObject &str) const
 Compare two strings using the PObject::Compare() function. More...
 
bool operator>= (const PObject &str) const
 Compare two strings using the PObject::Compare() function. More...
 
bool operator*= (const char *cstr) const
 Compare a PString to a C string using a case insensitive compare function. More...
 
bool operator== (const char *cstr) const
 Compare a PString to a C string using the Compare() function. More...
 
bool operator!= (const char *cstr) const
 Compare a PString to a C string using the PObject::Compare() function. More...
 
bool operator< (const char *cstr) const
 Compare a PString to a C string using the PObject::Compare() function. More...
 
bool operator> (const char *cstr) const
 Compare a PString to a C string using the PObject::Compare() function. More...
 
bool operator<= (const char *cstr) const
 Compare a PString to a C string using the PObject::Compare() function. More...
 
bool operator>= (const char *cstr) const
 Compare a PString to a C string using the PObject::Compare() function. More...
 
Comparison NumCompare (const PString &str, PINDEX count=P_MAX_INDEX, PINDEX offset=0) const
 Compare a string against a substring of the object. More...
 
Comparison NumCompare (const char *cstr, PINDEX count=P_MAX_INDEX, PINDEX offset=0) const
 Compare a string against a substring of the object. More...
 
PINDEX Find (char ch, PINDEX offset=0) const
 Locate the position within the string of the character. More...
 
PINDEX Find (const PString &str, PINDEX offset=0) const
 Locate the position within the string of the substring. More...
 
PINDEX Find (const char *cstr, PINDEX offset=0) const
 
PINDEX FindLast (char ch, PINDEX offset=P_MAX_INDEX) const
 Locate the position of the last matching character. More...
 
PINDEX FindLast (const PString &str, PINDEX offset=P_MAX_INDEX) const
 Locate the position of the last matching substring. More...
 
PINDEX FindLast (const char *cstr, PINDEX offset=P_MAX_INDEX) const
 Locate the position of the last matching substring. More...
 
PINDEX FindOneOf (const PString &set, PINDEX offset=0) const
 Locate the position of one of the characters in the set. More...
 
PINDEX FindOneOf (const char *cset, PINDEX offset=0) const
 Locate the position of one of the characters in the set. More...
 
PINDEX FindSpan (const PString &set, PINDEX offset=0) const
 Locate the position of character not in the set. More...
 
PINDEX FindSpan (const char *cset, PINDEX offset=0) const
 Locate the position of character not in the set. More...
 
PINDEX FindRegEx (const PRegularExpression &regex, PINDEX offset=0) const
 Locate the position within the string of one of the regular expression. More...
 
PBoolean FindRegEx (const PRegularExpression &regex, PINDEX &pos, PINDEX &len, PINDEX offset=0, PINDEX maxPos=P_MAX_INDEX) const
 Locate the position within the string of one of the regular expression. More...
 
PBoolean MatchesRegEx (const PRegularExpression &regex) const
 Return true if the entire string matches the regular expression. More...
 
void Replace (const PString &target, const PString &subs, PBoolean all=false, PINDEX offset=0)
 Locate the substring within the string and replace it with the specifed substring. More...
 
void Splice (const PString &str, PINDEX pos, PINDEX len=0)
 Splice the string into the current string at the specified position. More...
 
void Splice (const char *cstr, PINDEX pos, PINDEX len=0)
 Splice the string into the current string at the specified position. More...
 
void Delete (PINDEX start, PINDEX len)
 Remove the substring from the string. More...
 
PString operator() (PINDEX start, PINDEX end) const
 Extract a portion of the string into a new string. More...
 
PString Left (PINDEX len) const
 Extract a portion of the string into a new string. More...
 
PString Right (PINDEX len) const
 Extract a portion of the string into a new string. More...
 
PString Mid (PINDEX start, PINDEX len=P_MAX_INDEX) const
 Extract a portion of the string into a new string. More...
 
PString LeftTrim () const
 Create a string consisting of all characters from the source string except all spaces at the beginning of the string. More...
 
PString RightTrim () const
 Create a string consisting of all characters from the source string except all spaces at the end of the string. More...
 
PString Trim () const
 Create a string consisting of all characters from the source string except all spaces at the beginning and end of the string. More...
 
PString ToLower () const
 Create a string consisting of all characters from the source string with all upper case letters converted to lower case. More...
 
PString ToUpper () const
 Create a string consisting of all characters from the source string with all lower case letters converted to upper case. More...
 
PStringArray Tokenise (const PString &separators, PBoolean onePerSeparator=true) const
 Split the string into an array of substrings. More...
 
PStringArray Tokenise (const char *cseparators, PBoolean onePerSeparator=true) const
 Split the string into an array of substrings. More...
 
PStringArray Lines () const
 Split the string into individual lines. More...
 
PINLINE PString ()
 Construct an empty string. More...
 
PINLINE PString (const PString &str)
 Create a new reference to the specified string. More...
 
PINLINE PString (const std::string &str)
 Create a new string from the specified std::string. More...
 
 PString (const char *cstr)
 Create a string from the C string array. More...
 
 PString (const wchar_t *ustr)
 Create a string from the UCS-2 string array. More...
 
 PString (const char *cstr, PINDEX len)
 Create a string from the array. More...
 
 PString (const wchar_t *ustr, PINDEX len)
 Create a string from the UCS-2 array. More...
 
 PString (const PWCharArray &ustr)
 Create a string from the UCS-2 array. More...
 
 PString (char ch)
 Create a string from the single character. More...
 
 PString (short n)
 Create a string from the integer type. More...
 
 PString (unsigned short n)
 Create a string from the integer type. More...
 
 PString (int n)
 Create a string from the integer type. More...
 
 PString (unsigned int n)
 Create a string from the integer type. More...
 
 PString (long n)
 Create a string from the integer type. More...
 
 PString (unsigned long n)
 Create a string from the integer type. More...
 
 PString (PInt64 n)
 Create a string from the integer type. More...
 
 PString (PUInt64 n)
 Create a string from the integer type. More...
 
 PString (ConversionType type, const char *str,...)
 
 PString (ConversionType type, long value, unsigned base=10)
 
 PString (ConversionType type, double value, unsigned places)
 
PStringoperator= (const PString &str)
 Assign the string to the current object. More...
 
PStringoperator= (const std::string &str)
 Assign the string to the current object. More...
 
PStringoperator= (const char *cstr)
 Assign the C string to the current object. More...
 
PStringoperator= (char ch)
 Assign the character to the current object. More...
 
PStringoperator= (short n)
 Assign a string from the integer type. More...
 
PStringoperator= (unsigned short n)
 Assign a string from the integer type. More...
 
PStringoperator= (int n)
 Assign a string from the integer type. More...
 
PStringoperator= (unsigned int n)
 Assign a string from the integer type. More...
 
PStringoperator= (long n)
 Assign a string from the integer type. More...
 
PStringoperator= (unsigned long n)
 Assign a string from the integer type. More...
 
PStringoperator= (PInt64 n)
 Assign a string from the integer type. More...
 
PStringoperator= (PUInt64 n)
 Assign a string from the integer type. More...
 
virtual PStringMakeEmpty ()
 Make the current string empty. More...
 
PString operator+ (const PString &str) const
 Concatenate two strings to produce a third. More...
 
PString operator+ (const char *cstr) const
 Concatenate a C string to a PString to produce a third. More...
 
PString operator+ (char ch) const
 Concatenate a single character to a PString to produce a third. More...
 
PStringoperator+= (const PString &str)
 Concatenate a string to another string, modifiying that string. More...
 
PStringoperator+= (const char *cstr)
 Concatenate a C string to a PString, modifiying that string. More...
 
PStringoperator+= (char ch)
 Concatenate a single character to a PString. More...
 
PString operator& (const PString &str) const
 Concatenate two strings to produce a third. More...
 
PString operator& (const char *cstr) const
 Concatenate a C string to a PString to produce a third. More...
 
PString operator& (char ch) const
 Concatenate a single character to a PString to produce a third. More...
 
PStringoperator&= (const PString &str)
 Concatenate a string to another string, modifiying that string. More...
 
PStringoperator&= (const char *cstr)
 Concatenate a C string to a PString, modifiying that string. More...
 
PStringoperator&= (char ch)
 Concatenate a character to a PString, modifiying that string. More...
 
PStringsprintf (const char *cfmt,...)
 Concatenate a formatted output to the string. More...
 
PStringvsprintf (const PString &fmt, va_list args)
 Concatenate a formatted output to the string. More...
 
PStringvsprintf (const char *cfmt, va_list args)
 Concatenate a formatted output to the string. More...
 
long AsInteger (unsigned base=10) const
 Convert the string to an integer value using the specified number base. More...
 
DWORD AsUnsigned (unsigned base=10) const
 Convert the string to an integer value using the specified number base. More...
 
PInt64 AsInt64 (unsigned base=10) const
 Convert the string to an integer value using the specified number base. More...
 
PUInt64 AsUnsigned64 (unsigned base=10) const
 Convert the string to an integer value using the specified number base. More...
 
double AsReal () const
 Convert the string to a floating point number. More...
 
PWCharArray AsUCS2 () const
 Convert UTF-8 string to UCS-2. More...
 
PBYTEArray ToPascal () const
 Convert a standard null terminated string to a "pascal" style string. More...
 
PString ToLiteral () const
 Convert the string to C literal string format. More...
 
 operator const unsigned char * () const
 Get the internal buffer as a pointer to unsigned characters. More...
 
 operator std::string () const
 Cast the PString to a std::string. More...
 
- Public Member Functions inherited from PCharArray
 PCharArray (PINDEX initialSize=0)
 Construct a new dynamic array of char. More...
 
 PCharArray (char const *buffer, PINDEX length, PBoolean dynamic=true)
 Construct a new dynamic array of char. More...
 
- Public Member Functions inherited from PBaseArray< T >
 PBaseArray (PINDEX initialSize=0)
 Construct a new dynamic array of elements of the specified type. More...
 
 PBaseArray (T const *buffer, PINDEX length, PBoolean dynamic=true)
 Construct a new dynamic array of elements of the specified type. More...
 
PBoolean SetAt (PINDEX index, T val)
 Set the specific element in the array. More...
 
GetAt (PINDEX index) const
 Get a value from the array. More...
 
void Attach (const T *buffer, PINDEX bufferSize)
 Attach a pointer to a static block to the base array type. More...
 
T * GetPointer (PINDEX minSize=0)
 Get a pointer to the internal array and assure that it is of at least the specified size. More...
 
operator[] (PINDEX index) const
 Get a value from the array. More...
 
T & operator[] (PINDEX index)
 Get a reference to value from the array. More...
 
 operator T const * () const
 Get a pointer to the internal array. More...
 
PBoolean Concatenate (const PBaseArray &array)
 Concatenate one array to the end of this array. More...
 
- Public Member Functions inherited from PAbstractArray
 PAbstractArray (PINDEX elementSizeInBytes, PINDEX initialSize=0)
 Create a new dynamic array of initalSize elements of elementSizeInBytes bytes each. More...
 
 PAbstractArray (PINDEX elementSizeInBytes, const void *buffer, PINDEX bufferSizeInElements, PBoolean dynamicAllocation)
 Create a new dynamic array of bufferSizeInElements elements of elementSizeInBytes bytes each. More...
 
void Attach (const void *buffer, PINDEX bufferSize)
 Attach a pointer to a static block to the base array type. More...
 
void * GetPointer (PINDEX minSize=1)
 Get a pointer to the internal array and assure that it is of at least the specified size. More...
 
PBoolean Concatenate (const PAbstractArray &array)
 Concatenate one array to the end of this array. More...
 
- Public Member Functions inherited from PContainer
 PContainer (PINDEX initialSize=0)
 Create a new unique container. More...
 
 PContainer (const PContainer &cont)
 Create a new refernce to container. More...
 
PContaineroperator= (const PContainer &cont)
 Assign one container reference to another. More...
 
virtual ~PContainer ()
 Destroy the container class. More...
 
virtual PINDEX GetSize () const
 Get the current size of the container. More...
 
PBoolean SetMinSize (PINDEX minSize)
 Set the minimum size of container. More...
 
PBoolean IsUnique () const
 Determine if container is unique reference. More...
 
- Public Member Functions inherited from PObject
virtual ~PObject ()
 
virtual Comparison CompareObjectMemoryDirect (const PObject &obj) const
 Determine the byte wise comparison of two objects. More...
 
bool operator== (const PObject &obj) const
 Compare the two objects. More...
 
bool operator!= (const PObject &obj) const
 Compare the two objects. More...
 
bool operator< (const PObject &obj) const
 Compare the two objects. More...
 
bool operator> (const PObject &obj) const
 Compare the two objects. More...
 
bool operator<= (const PObject &obj) const
 Compare the two objects. More...
 
bool operator>= (const PObject &obj) const
 Compare the two objects. More...
 
virtual const char * GetClass (unsigned ancestor=0) const
 Get the current dynamic type of the object instance. More...
 
PBoolean IsClass (const char *cls) const
 
virtual PBoolean InternalIsDescendant (const char *clsName) const
 Determine if the dynamic type of the current instance is a descendent of the specified class. More...
 

Static Public Member Functions

Miscellaneous functions
static PBoolean IsValid (char c)
 Test if the character is valid in a filename. More...
 
static PBoolean IsValid (const PString &str)
 Test if all the characters are valid in a filename. More...
 
static bool IsAbsolutePath (const PString &path)
 Test if path is an absolute path or relative path. More...
 
- Static Public Member Functions inherited from PString
static PString Empty ()
 Return an empty string. More...
 
- Static Public Member Functions inherited from PObject
static Comparison InternalCompareObjectMemoryDirect (const PObject *obj1, const PObject *obj2, PINDEX size)
 Internal function caled from CompareObjectMemoryDirect() More...
 
static const char * Class ()
 Get the name of the class as a C string. More...
 

Protected Member Functions

virtual void AssignContents (const PContainer &cont)
 Copy the container contents. More...
 
- Protected Member Functions inherited from PString
void InternalFromUCS2 (const wchar_t *ptr, PINDEX len)
 
virtual Comparison InternalCompare (PINDEX offset, char c) const
 
virtual Comparison InternalCompare (PINDEX offset, PINDEX length, const char *cstr) const
 
 PString (int dummy, const PString *str)
 
 PString (PContainerReference &reference)
 
- Protected Member Functions inherited from PBaseArray< T >
virtual void PrintElementOn (ostream &stream, PINDEX index) const
 
 PBaseArray (PContainerReference &reference)
 
- Protected Member Functions inherited from PAbstractArray
PBoolean InternalSetSize (PINDEX newSize, PBoolean force)
 
virtual void ReadElementFrom (istream &stream, PINDEX index)
 
 PAbstractArray (PContainerReference &reference, PINDEX elementSizeInBytes)
 
- Protected Member Functions inherited from PContainer
 PContainer (int dummy, const PContainer *cont)
 Constructor used in support of the Clone() function. More...
 
 PContainer (PContainerReference &reference)
 Construct using static PContainerReference. More...
 
virtual void DestroyContents ()=0
 Destroy the container contents. More...
 
void CopyContents (const PContainer &c)
 Copy the container contents. More...
 
void CloneContents (const PContainer *src)
 Create a duplicate of the container contents. More...
 
void Destruct ()
 Internal function called from container destructors. More...
 
virtual void DestroyReference ()
 Destroy the PContainerReference instance. More...
 
- Protected Member Functions inherited from PObject
 PObject ()
 Constructor for PObject, made protected so cannot ever create one on its own. More...
 

Additional Inherited Members

- Public Types inherited from PString
typedef const char * Initialiser
 
enum  ConversionType {
  Pascal, Basic, Literal, Signed,
  Unsigned, Decimal, Exponent, Printf,
  NumConversionTypes
}
 
- Public Types inherited from PObject
enum  Comparison { LessThan = -1, EqualTo = 0, GreaterThan = 1 }
 Result of the comparison operation performed by the Compare() function. More...
 
- Protected Attributes inherited from PAbstractArray
PINDEX elementSize
 Size of an element in bytes. More...
 
char * theArray
 Pointer to the allocated block of memory. More...
 
PBoolean allocatedDynamically
 Flag indicating the array was allocated on the heap. More...
 
- Protected Attributes inherited from PContainer
PContainerReferencereference
 

Detailed Description

This class describes a full description for a file on the particular platform.

This will always uniquely identify the file on currently mounted volumes.

An empty string for a PFilePath indicates an illegal path.

The ancestor class is dependent on the platform. For file systems that are case sensitive, eg Unix, the ancestor is PString. For other platforms, the ancestor class is PCaselessString.

Constructor & Destructor Documentation

PFilePath::PFilePath ( )

Create a file specification object.

PFilePath::PFilePath ( const char *  cstr)

Create a file specification object with the specified file name.

The string passed in may be a full or partial specification for a file as determined by the platform. It is unusual for this to be a literal string, unless only the file title is specified, as that would be platform specific.

The partial file specification is translated into a canonical form which always absolutely references the file.

Parameters
cstrPartial C string for file name.
PFilePath::PFilePath ( const PString str)

Create a file specification object with the specified file name.

The string passed in may be a full or partial specification for a file as determined by the platform. It is unusual for this to be a literal string, unless only the file title is specified, as that would be platform specific.

The partial file specification is translated into a canonical form which always absolutely references the file.

Parameters
strPartial PString for file name.
PFilePath::PFilePath ( const PFilePath path)

Create a file specification object with the specified file name.

Parameters
pathPrevious path for file name.
PFilePath::PFilePath ( const char *  prefix,
const char *  dir 
)

Create a file spec object with a generated temporary name.

The first parameter is a prefix for the filename to which a unique number is appended. The second parameter is the directory in which the file is to be placed. If this is NULL a system standard directory is used.

Parameters
prefixPrefix string for file title.
dirDirectory in which to place the file.

Member Function Documentation

virtual void PFilePath::AssignContents ( const PContainer c)
protectedvirtual

Copy the container contents.

This copies the contents from one reference to another.

No duplication of contents occurs, for instance if the container is an array, the pointer to the array memory is copied, not the array memory block itself.

This function will get called by the base assignment operator.

Reimplemented from PContainer.

PDirectory PFilePath::GetDirectory ( ) const

Get the the directory that the file is contained in.

This may be identical to GetVolume() + GetPath() depending on the platform. eg for DOS file "C:\SRC\PWLIB\FRED.TXT" this would be "C:\SRC\PWLIB\".

Note that for Unix platforms, this returns the {physical} path of the directory. That is all symlinks are resolved. Thus the directory returned may not be the same as the value of GetPath().

Returns
Directory that the file is contained in.
PFilePathString PFilePath::GetFileName ( ) const

Get the actual directory entry name component of the full file specification.

This may be identical to GetTitle() + GetType() or simply GetTitle() depending on the platform. eg for DOS file "C:\SRC\PWLIB\FRED.TXT" this would be "FRED.TXT".

Returns
string for the file name part of the file specification.
PFilePathString PFilePath::GetPath ( ) const

Get the directory path component of the full file specification.

This will include leading and trailing directory separators. For example on DOS this could be "\SRC\PWLIB\", for Macintosh ":Source:PwLib:" and for Unix "/users/equivalence/src/pwlib/".

Returns
string for the path part of the file specification.
PFilePathString PFilePath::GetTitle ( ) const

Get the title component of the full file specification, eg for the DOS file "C:\SRC\PWLIB\FRED.DAT" this would be "FRED".

Returns
string for the title part of the file specification.

Referenced by PLoadPluginDirectory().

PFilePathString PFilePath::GetType ( ) const

Get the file type of the file.

Note that on some platforms this may actually be part of the full name string. eg for DOS file "C:\SRC\PWLIB\FRED.TXT" this would be ".TXT" but on the Macintosh this might be "TEXT".

Note there are standard translations from file extensions, eg ".TXT" and some Macintosh file types, eg "TEXT".

Returns
string for the type part of the file specification.

Referenced by PLoadPluginDirectory().

PFilePathString PFilePath::GetVolume ( ) const

Get the drive/volume name component of the full file specification.

This is very platform specific. For example in DOS & NT it is the drive letter followed by a colon ("C:"), for Macintosh it is the volume name ("Untitled") and for Unix it is empty ("").

Returns
string for the volume name part of the file specification..
static bool PFilePath::IsAbsolutePath ( const PString path)
static

Test if path is an absolute path or relative path.

Parameters
pathpath name
static PBoolean PFilePath::IsValid ( char  c)
static

Test if the character is valid in a filename.

Returns
true if the character is valid for a filename.
Parameters
cCharacter to test for validity.
static PBoolean PFilePath::IsValid ( const PString str)
static

Test if all the characters are valid in a filename.

Returns
true if the character is valid for a filename.
Parameters
strString to test for validity.
PFilePath& PFilePath::operator+= ( const PString str)

Concatenate a string to the file path, modifiying that path.

Returns
reference to string that was concatenated to.
Parameters
strString to concatenate.
PFilePath& PFilePath::operator+= ( const char *  cstr)

Concatenate a C string to a path, modifiying that path.

The cstr parameter is typically a literal string, eg:


        myStr += "fred";
   @return
   reference to string that was concatenated to.
Parameters
cstrC string to concatenate.
PFilePath& PFilePath::operator+= ( char  ch)

Concatenate a single character to a path.

The ch parameter is typically a literal, eg:


        myStr += '!';
   @return
   new string with concatenation of the object and parameter.
PFilePath& PFilePath::operator= ( const PFilePath path)

Change the file specification object to the specified file name.

Parameters
pathPrevious path for file name.
PFilePath& PFilePath::operator= ( const PString str)

Change the file specification object to the specified file name.

The string passed in may be a full or partial specifiaction for a file as determined by the platform. It is unusual for this to be a literal string, unless only the file title is specified, as that would be platform specific.

The partial file specification is translated into a canonical form which always absolutely references the file.

Parameters
strPartial PString for file name.
PFilePath& PFilePath::operator= ( const char *  cstr)

Change the file specification object to the specified file name.

The string passed in may be a full or partial specifiaction for a file as determined by the platform. It is unusual for this to be a literal string, unless only the file title is specified, as that would be platform specific.

The partial file specification is translated into a canonical form which always absolutely references the file.

Parameters
cstrPartial "C" string for file name.
void PFilePath::SetType ( const PFilePathString type)

Set the type component of the full file specification, eg for the DOS file "C:\SRC\PWLIB\FRED.DAT" would become "C:\SRC\PWLIB\FRED.TXT".

Parameters
typeNew type of the file.

The documentation for this class was generated from the following file: