Допустимая проверка имени файла. Какой самый лучший способ?
Смотрите тему постановки вопроса.
1) Я помню, что видел очень интересный вариант в VB.NET, использующий LINQ для сопоставления, используя & quot; LIKE% & apos;
2) Я знаю, что регулярные выражения будут работать, и я подозреваю, что это приведет к самому короткому коду и, вероятно, не будет слишком сложным для чтения для такого простого теста.
Вот что я сделал. Предупреждение: ты будешь ненавидеть это.
<code>Private Shared Function FileNameIsOk(ByVal fileName As String) As Boolean For Position As Integer = 0 To fileName.Length - 1 Dim Character As String = fileName.Substring(Position, 1).ToUpper Dim AsciiCharacter As Integer = Asc(Character) Select Case True Case Character = "_" 'allow _ Case Character = "." 'allow . Case AsciiCharacter >= Asc("A") And AsciiCharacter <= Asc("A") 'Allow alphas Case AsciiCharacter >= Asc("0") AndAlso AsciiCharacter <= Asc("9") 'allow digits Case Else 'otherwise, invalid character Return False End Select Next Return True End Function </code>