Feedback

VB - Ermitteln der OS Plattform mit Slash Ersetzung

Veröffentlicht von am 24.03.2016
(0 Bewertungen)
Es ist ein recht kleines Snippet, allerdings sehr hilfreich wenn man Anwendungen Plattformübergreifend programmieren möchte. In dem Snippet habt ihr zwei Funktionen, einmal zum Ermitteln des OS und einmal das ersetzen des Slashes. Da es vorkommt das man in seiner Anwendung auf Dateien zugreifen muss die fest definiert sind so kann z.b. My.Computer.FileSystem.SpecialDirectory.Desktop & "\Datei.txt" das programm zum absturz bringen unter linux da es keinen Pfad mit Reserve Slash gibt und Linux somit die Datei nicht findet.

So kann mann das so ganz einfach lösen:My.Computer.FileSystem.SpecialDirectory.Desktop & OS.OS.OS_slash & "Datei.txt"

Und somit macht es das Programm selber und man erspart sich viele Zeilen Code mit If abfragen oder Select Case.


Peace!
Public Class OS
    Enum OSPlatform
        Unix
        Win32NT
    End Enum
    Public Shared Property OS As OSPlatform
        Get
            If My.Computer.Info.OSPlatform = "Win32NT" Then
                OS = OSPlatform.Win32NT
            End If
            If My.Computer.Info.OSPlatform = "Unix" Then
                OS = OSPlatform.Unix
            End If
        End Get
        Set(ByVal value As OSPlatform)
        End Set
    End Property

    Public Shared Function OS_slash() As String
        Select Case OS
            Case OSPlatform.Win32NT
                Return "\"
            Case OSPlatform.Unix
                Return "/"
        End Select
    End Function
End Class
Abgelegt unter backslash, OS, plattformübergreifend, Pfad.

1 Kommentare zum Snippet

Koopakiller schrieb am 25.03.2016:
Hast du es unter einem Unix System mal mit Path.Combine versucht? Mir ist so, dass dieses ggf. ein / statt \ zum Pfad abtrennen benutzt.
 

Logge dich ein, um hier zu kommentieren!