DriveInfo.GetDrives メソッド
定義
コンピューター上のすべての論理ドライブのドライブ名を取得します。Retrieves the drive names of all logical drives on a computer.
public:
static cli::array <System::IO::DriveInfo ^> ^ GetDrives();
public static System.IO.DriveInfo[] GetDrives ();
static member GetDrives : unit -> System.IO.DriveInfo[]
Public Shared Function GetDrives () As DriveInfo()
戻り値
コンピューター上の論理ドライブを表す DriveInfo 型の配列。An array of type DriveInfo that represents the logical drives on a computer.
例外
ディスク エラーまたはドライブの準備ができていないなどの I/O エラーが発生しました。An I/O error occurred (for example, a disk error or a drive was not ready).
呼び出し元に、必要なアクセス許可がありません。The caller does not have the required permission.
例
次のコード例は、クラスを使用して、 DriveInfo 現在のシステム上のすべてのドライブに関する情報を表示する方法を示しています。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.
*/
Imports System.IO
Class Test
Public Shared Sub Main()
Dim allDrives() As DriveInfo = DriveInfo.GetDrives()
Dim d As DriveInfo
For Each d In allDrives
Console.WriteLine("Drive {0}", d.Name)
Console.WriteLine(" Drive type: {0}", d.DriveType)
If d.IsReady = True Then
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)
End If
Next
End Sub
End Class
'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.
注釈
このメソッドは、コンピューター上のすべての論理ドライブ名を取得します。This method retrieves all logical drive names on a computer. この情報を使用して、配列を反復処理し、他のメソッドやプロパティを使用してドライブに関する情報を取得でき DriveInfo ます。You can use this information to iterate through the array and obtain information on the drives using other DriveInfo methods and properties. 準備ができて IsReady いないドライブでこのメソッドを使用すると、がスローされるため、プロパティを使用してドライブの準備ができているかどうかをテストし IOException ます。Use the IsReady property to test whether a drive is ready because using this method on a drive that is not ready will throw a IOException.