例:
strReadFile = New IO.StreamReader(OpenFileDialog1.FileName, System.Text.Encoding.Default)
TextBox1.Text = strReadFile.ReadToEnd
我们的系统默认的一般是System.Text.Encoding.Default=gb2312,如果是其他编码要使用
System.Text.Encoding.utf8或其他编码
附检测文件编码格式的函数:
一个检测文本文件编码的函数
Function Getcode(ByVal fl As String) As System.Text.Encoding
Dim fs As New FileStream(fl, FileMode.Open, FileAccess.Read)
Dim r As New BinaryReader(fs, System.Text.Encoding.Default)
Dim ss As Byte() = r.ReadBytes(3)
r.Close()
fs.Close()
If Hex(ss(0)) >= "EF" Then
If Hex(ss(0)) = "EF" And Hex(ss(1)) = "BB" And Hex(ss(2)) = "BF" Then
Return System.Text.Encoding.UTF8
ElseIf Hex(ss(0)) = "FE" And Hex(ss(1)) = "FF" Then
Return System.Text.Encoding.BigEndianUnicode
ElseIf Hex(ss(0)) = "FF" And Hex(ss(1)) = "FE" Then
Return System.Text.Encoding.Unicode
Else
Return System.Text.Encoding.Default
End If
Else
Return System.Text.Encoding.Default
End If
End FunctionTop
在C#中打开文本时乱码问题
最新推荐文章于 2024-07-09 14:14:16 发布