Sonderzeichen im Protokoll namen führen zu Systemfehlermeldungen.
Gibt es hier eine Möglichkeit, die Zeichenkette auf Gültigkeit zu prüfen ohne jedes einzelne Zeichen mit jedem einzelnen Sonderzeichen zu vergleichen?
Hallo Herr Schiffner,
mit den folgenden Codezeilen können Sie einen Pfad auf ungültige Zeichen prüfen:
Code:
Dim path As String
Dim pathInvalid As Boolean
Dim invalidChars As Char()
invalidChars = System.IO.Path.GetInvalidPathChars()
path = "C:\test.txt"
pathInvalid = path.IndexOfAny(invalidChars) >= 0 'Ist OK
path = "C:\test,123<neu.txt"
pathInvalid = path.IndexOfAny(invalidChars) >= 0 'Ist nicht OK
Bzw. wenn Sie nur einen Dateinamen prüfen müssen:
Code:
Dim filename As String
Dim filenameInvalid As Boolean
Dim invalidFileNameChars As Char()
invalidFileNameChars = System.IO.Path.GetInvalidFilenameChars()
filename = "abc.txt"
filenameInvalid = filename.IndexOfAny(invalidFileNameChars) >= 0 'Ist OK
filename = "a?b?c.txt"
filenameInvalid = filename.IndexOfAny(invalidFileNameChars) >= 0 'Ist nicht OK
Mit freundlichen Grüßen
Hallo Herr Orleth, danke habe es eingebaut, funktioniert.