2

Windows で C# を使用して、ドライブ (WORKMEMORYSTICK など) の既知のフルネーム (存在する場合) からドライブ文字 (F:\ など) を取得するにはどうすればよいですか?

その逆でもスタートです。

4

2 に答える 2

2

このDriveInfoクラスは、使用可能なすべてのドライブ ( GetDrives) を取得するメソッドを公開します。指定された文字列に一致するこれらを列挙できます。次のようなものがそこにたどり着くのに役立つはずです:

DirectoryInfo root;
var drives = DriveInfo.GetDrives();
foreach (var drive in drives)
{
    if (drive.VolumeLabel == label)
    {
        root = drive.RootDirectory;
        break;
    }
}

abatishchev が述べたように、私の子供たちの時間要件のために最初は詳しく説明されていませんでしたが、そのラベルを持つ最初のドライブにのみ一致するという潜在的な問題があるため、これを考慮する必要がありますシステムが必要とする場合のロジック (ただし、一意でない文字列に基づいて 2 つのドライブのどちらが目的のドライブであるかを判断することは推測に勝るものはありません。または、以下で説明するように、ユーザーに尋ねます (これが入力の場合)。彼らが意味したのはどれですか。)

于 2011-08-28T17:59:10.867 に答える
2

すべてのドライブを循環して、DriveInfo オブジェクトの Name プロパティと VolumeLabel プロパティを確認できます。

コード例については、この質問を参照してください (USB ドライブ文字を取得するために使用されますが、簡単に変更できます)。

USBドライブレターの見つけ方

申し訳ありませんが、コードを提供することはできませんが、私は現在 Mac を使用しています :)

于 2011-08-28T18:01:47.437 に答える