DriveInfo Class

DriveInfo Class

 

Provides access to information on a drive.

Namespace:   System.IO
Assembly:  mscorlib (in mscorlib.dll)

System.Object
  System.IO.DriveInfo

[SerializableAttribute]
[ComVisibleAttribute(true)]
public sealed class DriveInfo : ISerializable

NameDescription
System_CAPS_pubmethodDriveInfo(String)

Provides access to information on the specified drive.

NameDescription
System_CAPS_pubpropertyAvailableFreeSpace

Indicates the amount of available free space on a drive, in bytes.

System_CAPS_pubpropertyDriveFormat

Gets the name of the file system, such as NTFS or FAT32.

System_CAPS_pubpropertyDriveType

Gets the drive type, such as CD-ROM, removable, network, or fixed.

System_CAPS_pubpropertyIsReady

Gets a value that indicates whether a drive is ready.

System_CAPS_pubpropertyName

Gets the name of a drive, such as C:\.

System_CAPS_pubpropertyRootDirectory

Gets the root directory of a drive.

System_CAPS_pubpropertyTotalFreeSpace

Gets the total amount of free space available on a drive, in bytes.

System_CAPS_pubpropertyTotalSize

Gets the total size of storage space on a drive, in bytes.

System_CAPS_pubpropertyVolumeLabel

Gets or sets the volume label of a drive.

NameDescription
System_CAPS_pubmethodEquals(Object)

Determines whether the specified object is equal to the current object.(Inherited from Object.)

System_CAPS_pubmethodSystem_CAPS_staticGetDrives()

Retrieves the drive names of all logical drives on a computer.

System_CAPS_pubmethodGetHashCode()

Serves as the default hash function. (Inherited from Object.)

System_CAPS_pubmethodGetType()

Gets the Type of the current instance.(Inherited from Object.)

System_CAPS_pubmethodToString()

Returns a drive name as a string.(Overrides Object.ToString().)

NameDescription
System_CAPS_pubinterfaceSystem_CAPS_privmethodISerializable.GetObjectData(SerializationInfo, StreamingContext)

Populates a SerializationInfo object with the data needed to serialize the target object.

This class models a drive and provides methods and properties to query for drive information. Use DriveInfo to determine what drives are available, and what type of drives they are. You can also query to determine the capacity and available free space on the drive.

The following code example demonstrates the use of the DriveInfo class to display information about all of the drives on the current system.

using System;
using System.IO;

class Test
{
    public static void Main()
    {
        DriveInfo[] allDrives = DriveInfo.GetDrives();

        foreach (DriveInfo d in allDrives)
        {
            Console.WriteLine("Drive {0}", d.Name);
            Console.WriteLine("  Drive type: {0}", d.DriveType);
            if (d.IsReady == true)
            {
                Console.WriteLine("  Volume label: {0}", d.VolumeLabel);
                Console.WriteLine("  File system: {0}", d.DriveFormat);
                Console.WriteLine(
                    "  Available space to current user:{0, 15} bytes", 
                    d.AvailableFreeSpace);

                Console.WriteLine(
                    "  Total available space:          {0, 15} bytes",
                    d.TotalFreeSpace);

                Console.WriteLine(
                    "  Total size of drive:            {0, 15} bytes ",
                    d.TotalSize);
            }
        }
    }
}
/* 
This code produces output similar to the following:

Drive A:\
  Drive type: Removable
Drive C:\
  Drive type: Fixed
  Volume label: 
  File system: FAT32
  Available space to current user:     4770430976 bytes
  Total available space:               4770430976 bytes
  Total size of drive:                10731683840 bytes 
Drive D:\
  Drive type: Fixed
  Volume label: 
  File system: NTFS
  Available space to current user:    15114977280 bytes
  Total available space:              15114977280 bytes
  Total size of drive:                25958948864 bytes 
Drive E:\
  Drive type: CDRom

The actual output of this code will vary based on machine and the permissions
granted to the user executing it.
*/

FileIOPermission

for accessing directory information. The class constructor requires this permission. Associated enumeration: PathDiscovery.

Universal Windows Platform
Available since 10
.NET Framework
Available since 2.0

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Return to top
Show:
© 2016 Microsoft