把ANSI格式的TXT文件批量转换成UTF8文件类型

  

   

#region 把ANSI格式的TXT文件批量转换成UTF-8文件类型

    class FileControl
    {
        private string path = "";
        private DirectoryInfo dirInfo = null;
        private FileInfo[] fileInfo = null;
        private string msg = "";

        public string Msg
        {
            get { return msg; }
            set { msg = value; }
        }

        public string Path
        {
            get { return path; }
            set { path = value; }
        }

        public FileControl()
        {

        }
        public FileControl(string path)
        {
            this.dirInfo = new DirectoryInfo(path);
        }

        public void getDirInfo(string path)
        {
            this.dirInfo = new DirectoryInfo(path);
        }
        private void getFileInfoArr()
        {
            if (this.dirInfo != null)
            {
                this.fileInfo = this.dirInfo.GetFiles("*.txt", SearchOption.AllDirectories);
            }
            else
            {
                this.msg = "无可转换的txt文件";
            }
        }

        public void Transform()
        {

            try
            {
                this.getFileInfoArr();
                foreach (FileInfo fi in this.fileInfo)
                {
                    FileStream fs = new FileStream(fi.FullName, FileMode.Open, FileAccess.Read);
                    StreamReader streamReader = new StreamReader(fs);
                    string newFileName = fi.FullName.Split('.')[fi.FullName.Split('.').Length - 2] + "_.txt";
                    File.WriteAllText(newFileName, streamReader.ReadToEnd(), Encoding.UTF8);
                }
                this.msg = "转换完美完成!";
            }
            catch (Exception ex)
            {
                this.msg = "转换发生异常!异常原因:" + ex.Message;
            }
        }

    }

    #endregion

原文地址:https://www.cnblogs.com/moss_tan_jun/p/1792869.html