在C#中打开文本时乱码问题

例:  
  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

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值