System::IO::DirectoryInfo Class Reference

Inherits System::IO::FileSystemInfo.

Public Member Functions

 DirectoryInfo (const String &path)
 
virtual bool get_Exists () override
 
virtual String get_Name () override
 Returns the name of the entity referred to by the path represented by the current object. More...
 
DirectoryInfoPtr get_Parent ()
 
DirectoryInfoPtr get_Root ()
 
void Create ()
 Creates a directory at the path represented by the current object. More...
 
DirectoryInfoPtr CreateSubdirectory (const String &path)
 
virtual void Delete () override
 Removes the directory referred to by the path represented by the current object if the directory is empty. More...
 
void Delete (bool recursive)
 
SharedPtr< IEnumerable< DirectoryInfoPtr > > EnumerateDirectories ()
 
SharedPtr< IEnumerable< DirectoryInfoPtr > > EnumerateDirectories (const String &searchPattern)
 
SharedPtr< IEnumerable< DirectoryInfoPtr > > EnumerateDirectories (const String &searchPattern, SearchOption searchOption)
 
SharedPtr< IEnumerable< FileInfoPtr > > EnumerateFiles ()
 
SharedPtr< IEnumerable< FileInfoPtr > > EnumerateFiles (const String &searchPattern)
 
SharedPtr< IEnumerable< FileInfoPtr > > EnumerateFiles (const String &searchPattern, SearchOption searchOption)
 
SharedPtr< IEnumerable< FileSystemInfoPtr > > EnumerateFileSystemInfos ()
 
SharedPtr< IEnumerable< FileSystemInfoPtr > > EnumerateFileSystemInfos (const String &searchPattern)
 
SharedPtr< IEnumerable< FileSystemInfoPtr > > EnumerateFileSystemInfos (const String &searchPattern, SearchOption searchOption)
 
ArrayPtr< DirectoryInfoPtrGetDirectories ()
 
ArrayPtr< DirectoryInfoPtrGetDirectories (const String &searchPattern)
 
ArrayPtr< DirectoryInfoPtrGetDirectories (const String &searchPattern, SearchOption searchOption)
 
ArrayPtr< FileInfoPtrGetFiles ()
 
ArrayPtr< FileInfoPtrGetFiles (const String &searchPattern)
 
ArrayPtr< FileInfoPtrGetFiles (const String &searchPattern, SearchOption searchOption)
 
ArrayPtr< FileSystemInfoPtrGetFileSystemInfos ()
 
ArrayPtr< FileSystemInfoPtrGetFileSystemInfos (const String &searchPattern)
 
ArrayPtr< FileSystemInfoPtrGetFileSystemInfos (const String &searchPattern, SearchOption searchOption)
 
void MoveTo (const String &destDirName)
 
String ToString () ASPOSE_CONST override
 Returns a string containing the path represented by the current object. More...
 
- Public Member Functions inherited from System::IO::FileSystemInfo
FileAttributes get_Attributes ()
 Returns the attributes of the entity represented by the current object. More...
 
void set_Attributes (FileAttributes value)
 
DateTime get_CreationTime ()
 Returns the creation time of the entity represented by the current object as local time. More...
 
void set_CreationTime (DateTime value)
 
DateTime get_CreationTimeUtc ()
 Returns the creation time of the entity represented by the current object as UTC time. More...
 
void set_CreationTimeUtc (DateTime value)
 
DateTime get_LastAccessTime ()
 Returns the last access time of the entity represented by the current object as local time. More...
 
void set_LastAccessTime (DateTime value)
 
DateTime get_LastAccessTimeUtc ()
 Returns the last access time of the entity represented by the current object as UTC time. More...
 
void set_LastAccessTimeUtc (DateTime value)
 
DateTime get_LastWriteTime ()
 Returns the last write time of the entity represented by the current object as local time. More...
 
void set_LastWriteTime (DateTime value)
 
DateTime get_LastWriteTimeUtc ()
 Returns the last write time of the entity represented by the current object as UTC time. More...
 
void set_LastWriteTimeUtc (DateTime value)
 
String get_Extension ()
 Returns the extension of the file represented by the current object. More...
 
virtual String get_FullName ()
 Returns the full name (including path) of the entity represented by the current object. More...
 
virtual void Finalize ()
 Does nothing. More...
 
void Refresh ()
 Refreshes the state of the current object. More...
 
- Public Member Functions inherited from System::Object
 Object ()
 Creates object. Initializes all internal data structures. More...
 
virtual ~Object ()
 Destroys object. Frees all internal data structures. More...
 
 Object (Object const &x)
 Copy constructor. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
 
Objectoperator= (Object const &x)
 Assignment operator. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
 
ObjectSharedRefAdded ()
 Increments shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
int SharedRefRemovedSafe ()
 Decrements and returns shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
int RemovedSharedRefs (int count)
 Decreases shared reference count by specified value. More...
 
Detail::SmartPtrCounter * WeakRefAdded ()
 Increments weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
void WeakRefRemoved ()
 Decrements weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
Detail::SmartPtrCounter * GetCounter ()
 Gets reference counter data structure associated with the object. More...
 
int SharedCount () const
 Gets current value of shared refernce counter. More...
 
void Lock ()
 Implements C# lock() statement locking. Call directly or use LockContext sentry object. More...
 
void Unlock ()
 Implements C# lock() statement unlocking. Call directly or use LockContext sentry object. More...
 
virtual bool Equals (ptr obj)
 Compares objects using C# Object.Equals semantics. More...
 
virtual int GetHashCode () const
 Analog of C# Object.GetHashCode() method. Enables hashing of custom objects. More...
 
virtual ptr MemberwiseClone () const
 Analog of C# Object.MemberwiseClone() method. Enables cloning custom types. More...
 
virtual const TypeInfoGetType () const
 Gets actual type of object. Analog of C# System.Object.GetType() call. More...
 
virtual bool Is (const TypeInfo &targetType) const
 Check if object represents an instance of type described by targetType. Analog of C# 'is' operator. More...
 
virtual void SetTemplateWeakPtr (unsigned int argument)
 Set n'th template argument a weak pointer (rather than shared). Allows switching pointers in containers to weak mode. More...
 
template<>
bool Equals (float const &objA, float const &objB)
 
template<>
bool Equals (double const &objA, double const &objB)
 
template<>
bool ReferenceEquals (String const &str, std::nullptr_t)
 
template<>
bool ReferenceEquals (String const &str1, String const &str2)
 

Additional Inherited Members

- Public Types inherited from System::Object
typedef SmartPtr< Objectptr
 Alias for smart pointer type. More...
 
typedef System::Details::SharedMembersType shared_members_type
 structure to keep list of shared pointers contained in object. More...
 
- Static Public Member Functions inherited from System::Object
static bool ReferenceEquals (ptr const &objA, ptr const &objB)
 Compares objects by reference. More...
 
template<typename T >
static std::enable_if<!IsSmartPtr< T >::value, bool >::type ReferenceEquals (T const &objA, T const &objB)
 Compares objects by reference. More...
 
template<typename T >
static std::enable_if<!IsSmartPtr< T >::value, bool >::type ReferenceEquals (T const &objA, std::nullptr_t)
 Reference-compares value type object with nullptr. More...
 
template<typename T1 , typename T2 >
static std::enable_if< IsSmartPtr< T1 >::value &&IsSmartPtr< T2 >::value, bool >::type Equals (T1 const &objA, T2 const &objB)
 Compares reference type objects in C# style. More...
 
template<typename T1 , typename T2 >
static std::enable_if<!IsSmartPtr< T1 >::value &&!IsSmartPtr< T2 >::value, bool >::type Equals (T1 const &objA, T2 const &objB)
 Compares value type objects in C# style. More...
 
static const TypeInfoType ()
 Impleemnts C# typeof(System.Object) construct. More...
 
- Protected Member Functions inherited from System::IO::FileSystemInfo
 FileSystemInfo ()
 Constructs a new instance of FileSystemInfo class. More...
 
void Refresh (bool force)
 
- Protected Attributes inherited from System::IO::FileSystemInfo
String FullPath
 The full path of the entity represented by the current object. More...
 
String OriginalPath
 
FileSystemInfoStat info
 Information describing the entity represented by the current object. More...
 
bool valid
 Indicates if the path represented by the current object references an existing entity. More...
 

Detailed Description

Represents a file system path, a directory referred to by this path and provides instance methods for manipulating directories. Objects of this class should only be allocated using System::MakeObject() function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument.

Constructor & Destructor Documentation

◆ DirectoryInfo()

System::IO::DirectoryInfo::DirectoryInfo ( const String path)

Constructs an instnace of DirectoryInfo class on the specified path.

Parameters
pathA path on which to create an instance; the path does not have to refer to existing entity

Member Function Documentation

◆ Create()

void System::IO::DirectoryInfo::Create ( )

Creates a directory at the path represented by the current object.

◆ CreateSubdirectory()

DirectoryInfoPtr System::IO::DirectoryInfo::CreateSubdirectory ( const String path)

Creates subdirectories on the specified path.

Parameters
pathThe specified path
Returns
The last directory specified in path.

◆ Delete() [1/2]

virtual void System::IO::DirectoryInfo::Delete ( )
overridevirtual

Removes the directory referred to by the path represented by the current object if the directory is empty.

Implements System::IO::FileSystemInfo.

◆ Delete() [2/2]

void System::IO::DirectoryInfo::Delete ( bool  recursive)

Removes the directory referred to by the path represented by the current object. A parameter specifies if the content of the directory should be recursively removed if the directory is not empty.

Parameters
recursiveSpecifies if the content of the directory should be recursively removed if it is not empty

◆ EnumerateDirectories() [1/3]

SharedPtr<IEnumerable<DirectoryInfoPtr> > System::IO::DirectoryInfo::EnumerateDirectories ( )

Returns enumerable collection containing all directories located in the directory represented by the current object.

◆ EnumerateDirectories() [2/3]

SharedPtr<IEnumerable<DirectoryInfoPtr> > System::IO::DirectoryInfo::EnumerateDirectories ( const String searchPattern)

Searches for the directories that satisfy the specified search criteria in the directory represented by the current object.

Parameters
searchPatternThe name pattern of the directories to search for
Returns
The enumerable collection of shared pointers to DirectoryInfo objects representing the found directories whose names match searchPattern

◆ EnumerateDirectories() [3/3]

SharedPtr<IEnumerable<DirectoryInfoPtr> > System::IO::DirectoryInfo::EnumerateDirectories ( const String searchPattern,
SearchOption  searchOption 
)

Searches for the directories that satisfy the specified search criteria either in the directory represented by the current object or in the whole directory tree rooted in the directory represented by the current object.

Parameters
searchPatternThe name pattern of the directories to search for
searchOptionSpecifies whether the search has to be performed in the directory represented by the current object only or in the whole directory tree rooted in the directory represented by the current object
Returns
The enumerable collection of shared pointers to DirectoryInfo objects representing the found directories whose names match searchPattern

◆ EnumerateFiles() [1/3]

SharedPtr<IEnumerable<FileInfoPtr> > System::IO::DirectoryInfo::EnumerateFiles ( )

Returns enumerable collection containing all files located in the directory represented by the current object.

◆ EnumerateFiles() [2/3]

SharedPtr<IEnumerable<FileInfoPtr> > System::IO::DirectoryInfo::EnumerateFiles ( const String searchPattern)

Searches for the files that satisfy the specified search criteria in the directory represented by the current object.

Parameters
searchPatternThe name pattern of the files to search for
Returns
The enumerable collection of shared pointers to FileInfo objects representing the found files whose names match searchPattern

◆ EnumerateFiles() [3/3]

SharedPtr<IEnumerable<FileInfoPtr> > System::IO::DirectoryInfo::EnumerateFiles ( const String searchPattern,
SearchOption  searchOption 
)

Searches for the files that satisfy the specified search criteria either in the directory represented by the current object or in the whole directory tree rooted in the directory represented by the current object.

Parameters
searchPatternThe name pattern of the files to search for
searchOptionSpecifies whether the search has to be performed in the directory represented by the current object only or in the whole directory tree rooted in the directory represented by the current object
Returns
The enumerable collection of shared pointers to FileInfo objects representing the found files whose names match searchPattern

◆ EnumerateFileSystemInfos() [1/3]

SharedPtr<IEnumerable<FileSystemInfoPtr> > System::IO::DirectoryInfo::EnumerateFileSystemInfos ( )

Returns enumerable collection containing all files and directories located in the directory represented by the current object.

◆ EnumerateFileSystemInfos() [2/3]

SharedPtr<IEnumerable<FileSystemInfoPtr> > System::IO::DirectoryInfo::EnumerateFileSystemInfos ( const String searchPattern)

Searches for the files and directories that satisfy the specified search criteria in the directory represented by the current object.

Parameters
searchPatternThe name pattern of the files and directories to search for
Returns
The enumerable collection of shared pointers to FileSystemInfo objects representing the found files and directories whose names match searchPattern

◆ EnumerateFileSystemInfos() [3/3]

SharedPtr<IEnumerable<FileSystemInfoPtr> > System::IO::DirectoryInfo::EnumerateFileSystemInfos ( const String searchPattern,
SearchOption  searchOption 
)

Searches for the files and directories that satisfy the specified search criteria either in the directory represented by the current object or in the whole directory tree rooted in the directory represented by the current object.

Parameters
searchPatternThe name pattern of the files and directories to search for
searchOptionSpecifies whether the search has to be performed in the directory represented by the current object only or in the whole directory tree rooted in the directory represented by the current object
Returns
The enumerable collection of shared pointers to FileSystemInfo objects representing the found files and directories whose names match searchPattern

◆ get_Exists()

virtual bool System::IO::DirectoryInfo::get_Exists ( )
overridevirtual

Determines if the path represented by the current object refers to existing directory.

Returns
True if the path refers to existing directory, otherwise - false

Implements System::IO::FileSystemInfo.

◆ get_Name()

virtual String System::IO::DirectoryInfo::get_Name ( )
overridevirtual

Returns the name of the entity referred to by the path represented by the current object.

Implements System::IO::FileSystemInfo.

◆ get_Parent()

DirectoryInfoPtr System::IO::DirectoryInfo::get_Parent ( )

Returns a shared pointer to DirectoryInfo object that represents a path referring the parent directory of the directory represented by the current object.

◆ get_Root()

DirectoryInfoPtr System::IO::DirectoryInfo::get_Root ( )

Returns a shared pointer to DirectoryInfo object that represents a path referring the root directory of the directory represented by the current object.

◆ GetDirectories() [1/3]

ArrayPtr<DirectoryInfoPtr> System::IO::DirectoryInfo::GetDirectories ( )

Returns an array containing shared pointers to DirectoryInfo objects representing all directories located in the directory represented by the current object.

◆ GetDirectories() [2/3]

ArrayPtr<DirectoryInfoPtr> System::IO::DirectoryInfo::GetDirectories ( const String searchPattern)

Searches for the directories that satisfy the specified search criteria in the directory represented by the current object.

Parameters
searchPatternThe name pattern of the directories to search for
Returns
An array of shared pointers to DirectoryInfo objects representing the found directories whose names match searchPattern

◆ GetDirectories() [3/3]

ArrayPtr<DirectoryInfoPtr> System::IO::DirectoryInfo::GetDirectories ( const String searchPattern,
SearchOption  searchOption 
)

Searches for the directories that satisfy the specified search criteria either in the directory represented by the current object or in the whole directory tree rooted in the directory represented by the current object.

Parameters
searchPatternThe name pattern of the directories to search for
searchOptionSpecifies whether the search has to be performed in the directory represented by the current object only or in the whole directory tree rooted in the directory represented by the current object
Returns
An array of shared pointers to DirectoryInfo objects representing the found directories whose names match searchPattern

◆ GetFiles() [1/3]

ArrayPtr<FileInfoPtr> System::IO::DirectoryInfo::GetFiles ( )

Returns an array containing shared pointers to FileInfo objects representing all directories located in the directory represented by the current object.

◆ GetFiles() [2/3]

ArrayPtr<FileInfoPtr> System::IO::DirectoryInfo::GetFiles ( const String searchPattern)

Searches for the files that satisfy the specified search criteria in the directory represented by the current object.

Parameters
searchPatternThe name pattern of the files to search for
Returns
An array of shared pointers to FileInfo objects representing the found files whose names match searchPattern

◆ GetFiles() [3/3]

ArrayPtr<FileInfoPtr> System::IO::DirectoryInfo::GetFiles ( const String searchPattern,
SearchOption  searchOption 
)

Searches for the files that satisfy the specified search criteria either in the directory represented by the current object or in the whole directory tree rooted in the directory represented by the current object.

Parameters
searchPatternThe name pattern of the files to search for
searchOptionSpecifies whether the search has to be performed in the directory represented by the current object only or in the whole directory tree rooted in the directory represented by the current object
Returns
An array of shared pointers to FileInfo objects representing the found files whose names match searchPattern

◆ GetFileSystemInfos() [1/3]

ArrayPtr<FileSystemInfoPtr> System::IO::DirectoryInfo::GetFileSystemInfos ( )

Returns an array containing shared pointers to FileSystemInfo objects representing all files and directories located in the directory represented by the current object.

◆ GetFileSystemInfos() [2/3]

ArrayPtr<FileSystemInfoPtr> System::IO::DirectoryInfo::GetFileSystemInfos ( const String searchPattern)

Searches for the files and directories that satisfy the specified search criteria in the directory represented by the current object.

Parameters
searchPatternThe name pattern of the files and directories to search for
Returns
An array of shared pointers to FileSystemInfo objects representing the found files and directories whose names match searchPattern

◆ GetFileSystemInfos() [3/3]

ArrayPtr<FileSystemInfoPtr> System::IO::DirectoryInfo::GetFileSystemInfos ( const String searchPattern,
SearchOption  searchOption 
)

Searches for the files and directories that satisfy the specified search criteria either in the directory represented by the current object or in the whole directory tree rooted in the directory represented by the current object.

Parameters
searchPatternThe name pattern of the files and directories to search for
searchOptionSpecifies whether the search has to be performed in the directory represented by the current object only or in the whole directory tree rooted in the directory represented by the current object
Returns
An array of shared pointers to FileSystemInfo objects representing the found files and directories whose names match searchPattern

◆ MoveTo()

void System::IO::DirectoryInfo::MoveTo ( const String destDirName)

Moves the directory represented by the current object and all its contentto the specified location.

Parameters
destDirNameThe new location

◆ ToString()

String System::IO::DirectoryInfo::ToString ( )
overridevirtual

Returns a string containing the path represented by the current object.

Reimplemented from System::Object.