Foxtable(狐表)用户栏目专家坐堂 → FileSys用法中编码的问题?


  共有1712人关注过本帖树形打印复制链接

主题:FileSys用法中编码的问题?

帅哥哟,离线,有人找我吗?
有点色
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/4/21 17:58:00 [显示全部帖子]

mark txt编码

 

 

全局代码

 

Public Function GetFileEncodeType(filename As String) As  System.Text.Encoding
Dim fs = new System.IO.FileStream(filename, System.IO.FileMode.Open, System.IO.FileAccess.Read)
Dim  br = new System.IO.BinaryReader(fs)
Dim buffer = br.ReadBytes(2)
If buffer(0) >= &HEF Then
    If buffer(0) = &HEF AndAlso buffer(1) = &HBB
       
        Return System.Text.Encoding.UTF8
    Else If buffer(0) = &HFE AndAlso buffer(1) = &HFF
       
        Return System.Text.Encoding.BigEndianUnicode
       
    Else If buffer(0) = &HFF AndAlso buffer(1) = &HFE
       
        Return System.Text.Encoding.Unicode
       
    Else
       
        Return System.Text.Encoding.Default
    End If
Else
    Return System.Text.Encoding.Default
End If
br.close
fs.close
End Function

 

调用函数

 

Dim file As String = "g:\test.txt"
Dim s As String = FileSys.ReadAllText(file, GetFileEncodeType(file))
msgbox(s)

[此贴子已经被作者于2017/4/21 17:59:50编辑过]

 回到顶部