• 将文本文件转换成UTF8格式


    复制文件:

    protected void CopyAll(string olddirectory, string newdirectory, string dir)
    {
        DirectoryInfo info = new DirectoryInfo((dir.Length > 0) ? dir : olddirectory);
        FileInfo[] files = info.GetFiles();
        foreach (FileInfo info2 in files)
        {
            try
            {
                string destFileName = string.Format(@"{0}\{1}", (dir.Length > 0) ? dir.Replace(olddirectory, newdirectory) : newdirectory, info2.Name);
                File.Copy(info2.FullName, destFileName);
                FileInfo info3 = new FileInfo(destFileName);
                info3.Attributes &= FileAttributes.ReadOnly;
                byte[] bytes = File.ReadAllBytes(destFileName);
                string str2 = Encoding.UTF8.GetString(bytes);
                File.WriteAllText(destFileName, File.ReadAllText(destFileName, Encoding.Default), this.UTF8WithOutBom);
                info3.Attributes |= FileAttributes.ReadOnly;
            }
            catch (Exception exception)
            {
                Console.WriteLine(exception.ToString());
            }
        }
        if (info.GetDirectories().Length > 0)
        {
            for (int i = 0; i < info.GetDirectories().Length; i++)
            {
                string path = string.Format(@"{0}\{1}", (dir.Length > 0) ? dir.Replace(olddirectory, newdirectory) : newdirectory, info.GetDirectories()[i].Name);
                if (!Directory.Exists(path))
                {
                    Directory.CreateDirectory(path);
                }
                this.CopyAll(olddirectory, newdirectory, info.GetDirectories()[i].FullName);
            }
        }
    }
    

     

    复制文件:

    public void CopyDirectoryAndFiles(string olddirectory, string newdirectory)
    {
        DirectoryInfo info = new DirectoryInfo(newdirectory);
        if (!info.Exists)
        {
            Directory.CreateDirectory(newdirectory);
        }
        this.CopyAll(olddirectory, newdirectory, "");
    }
    

      

    转换:

    private void button1_Click(object sender, EventArgs e)
    {
        string text = this.textBox1.Text;
        string newdirectory = this.textBox2.Text;
        this.CopyDirectoryAndFiles(text, newdirectory);
        MessageBox.Show("finished");
    }
    
     
    

      

  • 相关阅读:
    后缀树到后缀自动机
    bzoj 4199 品酒大会
    BZOJ 4310 跳蚤
    BZOJ 4545 DQS的Trie
    BZOJ 3238 差异
    BZOJ 3277 串
    BZOJ 3926 诸神眷顾的幻想乡
    线程与进程
    SparkSql自定义数据源之读取的实现
    spark提交至yarn的的动态资源分配
  • 原文地址:https://www.cnblogs.com/wzihan/p/15583984.html
Copyright © 2020-2023  润新知