Back to Top

プログラムの覚書

Category: VBサンプル

VB.NET 接続ドライブ名の取得

現在接続されているドライブ名を取得方法を記載します。

接続ドライブは、DriveInfoクラスにて取得が可能です。またDriveInfoにて指定ドライブの情報の取得も出来ます。

接続ドライブ名を取得する

Private Function GetDriveName(DrvType As DriveType) As String()
    Dim DriveList As New System.Collections.ArrayList()
    Dim allDrives As DriveInfo() = DriveInfo.GetDrives()
    For Each d As DriveInfo In allDrives
        If d.DriveType = DrvType Then
            DriveList.Add(d.Name)
        End If
    Next
    Return DriveList.ToArray(GetType(String))
End Function

上の例では、引数にDriveTypeの列挙型を渡して、取得したい形式のドライブのみを取得しています。

ドライブの形式(光学ディスク、固定のディスク、ネットワーク ドライブなど)の詳細は、DriveType 列挙型を参照してください。

 

 

VB.NET ランダムストリング

ランダムに文字を選び文字列を作成する方法を記載します。

0-9 A-Z a-z の範囲の半角文字にて、ランダムに文字を選び文字列を作成します。

アルゴリズムは、多々あると思いますが参考までに記載します。

ランダムストリングの作成

''' <summary>
''' 0-9 A-Z a-zの範囲でランダムに文字列を作成する
''' </summary>
''' <param name="size">作成する文字列のバイト数</param>
''' <returns>文字列</returns>
Private Function RandomString(size As Integer) As String
    Dim builder As New StringBuilder()
    Dim random As New Random()
    Dim no As Integer

    For i As Integer = 0 To size - 1
        no = random.Next(0, 62)
        If no <= 9 Then                 '0-9(&H30-&H39)   
            no = no + &H30
        ElseIf no <= 35 Then            'A-Z(&H41-&H5A)
            no = no + (&H41 - 10)
        Else                            'a-z(&H61-&H7A)
            no = no + (&H61 - 36)
        End If
        builder.Append(Convert.ToChar(no))
    Next

    Return builder.ToString()
End Function