我有以下函数,当它打开文件以建立文件类型时不会返回正确的值。我在做什么错了?
前8个字符采用这种格式 %PDF-1.4
Function GetFileType(xFile As String) As Boolean
Dim fileBytes As Byte()
fileBytes = System.IO.File.ReadAllBytes(xFile)
Dim s As String
s = System.Text.Encoding.UTF8.GetString(fileBytes)
Select Case s
Case s.Substring(1, 3) = "PDF"
GetFileType = False
Case Else
GetFileType = True
End Select
End Function
它与case语句不匹配,它总是移到让我感到困惑的else部分。
答案 0 :(得分:2)
为什么要尝试使用case语句?
在这种情况下(看看我在那儿做了什么?),一个简单的If
将起作用:
Function GetFileType(xFile As String) As Boolean
Dim fileBytes As Byte()
fileBytes = System.IO.File.ReadAllBytes(xFile)
Dim s As String
s = System.Text.Encoding.UTF8.GetString(fileBytes)
if s.Substring(1, 3) = "PDF" then
GetFileType = False
Else
GetFileType = True
End If
End Function