首页 > Windows开发 > 详细

C# 判断文件编码

时间:2018-04-27 17:12:48      阅读:214      评论:0      收藏:0      [点我收藏+]

无耐网上各种方法都有缺陷,此方法为原创,暂问发现问题。如发现请指正

public static Encoding GetFileEncodingByContent(string path)
        {
            var contentWithUTF8 = File.ReadAllText(path, Encoding.UTF8);
            var contentWithGBK = File.ReadAllText(path, Encoding.GetEncoding("GBK"));
            if (contentWithUTF8.Length < contentWithGBK.Length)
                return Encoding.UTF8;
            else if (contentWithUTF8.Length == contentWithGBK.Length)
            {
                using (var reader = new StreamReader(path, true))
                {
                    reader.Peek(); // you need this!
                    return reader.CurrentEncoding;
                }
            }
            else
                return Encoding.GetEncoding("GBK");
            
        }

 

C# 判断文件编码

原文:https://www.cnblogs.com/nanfei/p/8963277.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!