Saturday 14 September 2013

VB.Net - Manipulating the Windows File System

VB.Net allows you to work with the directories and files using various directory and file related classes like, the DirectoryInfo class and the FileInfo class.

The DirectoryInfo Class

The DirectoryInfo class is derived from the FileSystemInfo class. It has various methods for creating, moving, and browsing through directories and subdirectories. This class cannot be inherited.
Following are some commonly used properties of the DirectoryInfo class:
S.NProperty Name & Description
1Attributes
Gets the attributes for the current file or directory.
2CreationTime
Gets the creation time of the current file or directory.
3Exists
Gets a Boolean value indicating whether the directory exists.
4Extension
Gets the string representing the file extension.
5FullName
Gets the full path of the directory or file.
6LastAccessTime
Gets the time the current file or directory was last accessed.
7Name
Gets the name of this DirectoryInfo instance.
Following are some commonly used methods of the DirectoryInfo class:
S.NMethod Name & Purpose
1Public Sub Create
Creates a directory.
2Public Function CreateSubdirectory ( path As String ) As DirectoryInfo 
Creates a subdirectory or subdirectories on the specified path. The specified path can be relative to this instance of the DirectoryInfo class.
3Public Overrides Sub Delete
Deletes this DirectoryInfo if it is empty.
4Public Function GetDirectories As DirectoryInfo()
Returns the subdirectories of the current directory.
5Public Function GetFiles As FileInfo()
Returns a file list from the current directory.
For complete list of properties and methods please visit Microsoft's documentation.

The FileInfo Class

The FileInfo class is derived from the FileSystemInfo class. It has properties and instance methods for creating, copying, deleting, moving, and opening of files, and helps in the creation of FileStream objects. This class cannot be inherited.
Following are some commonly used properties of the FileInfo class:
S.NProperty Name & Description
1Attributes
Gets the attributes for the current file.
2CreationTime
Gets the creation time of the current file.
3Directory
Gets an instance of the directory which the file belongs to.
4Exists
Gets a Boolean value indicating whether the file exists.
5Extension
Gets the string representing the file extension.
6FullName
Gets the full path of the file.
7LastAccessTime
Gets the time the current file was last accessed.
8LastWriteTime
Gets the time of the last written activity of the file.
9Length
Gets the size, in bytes, of the current file.
10Name
Gets the name of the file.
Following are some commonly used methods of the FileInfo class:
S.NMethod Name & Purpose
1Public Function AppendText As StreamWriter
Creates a StreamWriter that appends text to the file represented by this instance of the FileInfo.
2Public Function Create As FileStream
Creates a file.
3Public Overrides Sub Delete
Deletes a file permanently.
4Public Sub MoveTo ( destFileName As String ) 
Moves a specified file to a new location, providing the option to specify a new file name.
5Public Function Open ( mode As FileMode ) As FileStream 
Opens a file in the specified mode.
6Public Function Open ( mode As FileMode, access As FileAccess ) As FileStream 
Opens a file in the specified mode with read, write, or read/write access.
7Public Function Open ( mode As FileMode, access As FileAccess, share As FileShare ) As FileStream 
Opens a file in the specified mode with read, write, or read/write access and the specified sharing option.
8Public Function OpenRead As FileStream
Creates a read-only FileStream
9Public Function OpenWrite As FileStream
Creates a write-only FileStream.
For complete list of properties and methods, please visit Microsoft's documentation

Example

The following example demonstrates the use of the above mentioned classes:
Imports System.IO
Module fileProg
   Sub Main()
      'creating a DirectoryInfo object
      Dim mydir As DirectoryInfo = New DirectoryInfo("c:\Windows")
      ' getting the files in the directory, their names and size
      Dim f As FileInfo() = mydir.GetFiles()
      Dim file As FileInfo
      For Each file In f
          Console.WriteLine("File Name: {0} Size: {1}  ", file.Name, file.Length)
      Next file
      Console.ReadKey()
   End Sub
End Module
When you compile and run the program, it displays the names of files and their size in the Windows directory.

No comments:

Post a Comment