
نوشته شده توسط
Hossis
سلام
یک سوال مهم در این جا مطح هست و اون هم اینه که وقتی یک فایل متنی رو باز کردیم, از کجا بفهمیم یونیکد هست یا UTF-8 یا ansii؟؟
در حقیقت, قبل از لود کردن متنش باید این رو بدونیم
با سلام
با تابع زیر میتونید این کار رو انجام بدید
Private Function is_unicode(ByVal path As String) As Boolean
Dim enc As System.Text.Encoding = Nothing
Dim file As System.IO.FileStream = New System.IO.FileStream(path, FileMode.Open, FileAccess.Read, FileShare.Read)
If file.CanSeek Then
Dim bom As Byte() = New Byte(3) {}
file.Read(bom, 0, 4)
If (bom(0) = &HEF AndAlso bom(1) = &HBB AndAlso bom(2) = &HBF) OrElse (bom(0) = &HFF AndAlso bom(1) = &HFE) OrElse (bom(0) = &HFE AndAlso bom(1) = &HFF) OrElse (bom(0) = 0 AndAlso bom(1) = 0 AndAlso bom(2) = &HFE AndAlso bom(3) = &HFF) Then
Return (True)
Else
Return (False)
End If
file.Seek(0, System.IO.SeekOrigin.Begin)
Else
Return (False)
End If
End Function
موفق باشید