zoukankan      html  css  js  c++  java
  • C# 有关文件处理

    一、移动文件夹内容,含子文件 参照:http://www.ayjs.net/post/300.html

    /// <summary>
            /// 移动文件夹内容
            /// </summary>
            /// <param name="source"></param>
            /// <param name="target">目标</param>
            public static void MoveDirectory(string source, string target)
            {
                var sourcePath = source.TrimEnd('\', ' ');
                var targetPath = target.TrimEnd('\', ' ');
                var files = Directory.EnumerateFiles(sourcePath, "*", SearchOption.AllDirectories)
                                     .GroupBy(s => Path.GetDirectoryName(s));
                foreach (var folder in files)
                {
                    var targetFolder = folder.Key.Replace(sourcePath, targetPath);
                    Directory.CreateDirectory(targetFolder);
                    foreach (var file in folder)
                    {
                        var targetFile = Path.Combine(targetFolder, Path.GetFileName(file));
                        if (File.Exists(targetFile)) File.Delete(targetFile);
                        File.Move(file, targetFile);
                    }
                }
                Directory.Delete(source, true);
            }

    二、文件和文件夹类DirectoryInfo、FileInfo 参照:https://www.cnblogs.com/skylaugh/archive/2012/09/23/2698850.html

    C#遍历指定文件夹中的所有文件
    DirectoryInfo TheFolder=new DirectoryInfo(folderFullName);
    //遍历文件夹
    foreach(DirectoryInfo NextFolder in TheFolder.GetDirectories())
       this.listBox1.Items.Add(NextFolder.Name);
    //遍历文件
    foreach(FileInfo NextFile in TheFolder.GetFiles())
       this.listBox2.Items.Add(NextFile.Name);
    
    ===================================================================
    
    如何获取指定目录包含的文件和子目录
        1. DirectoryInfo.GetFiles():获取目录中(不包含子目录)的文件,返回类型为FileInfo[],支持通配符查找;
        2. DirectoryInfo.GetDirectories():获取目录(不包含子目录)的子目录,返回类型为DirectoryInfo[],支持通配符查找;
        3. DirectoryInfo. GetFileSystemInfos():获取指定目录下(不包含子目录)的文件和子目录,返回类型为FileSystemInfo[],支持通配符查找;
    如何获取指定文件的基本信息;
        FileInfo.Exists:获取指定文件是否存在;
        FileInfo.Name,FileInfo.Extensioin:获取文件的名称和扩展名;
        FileInfo.FullName:获取文件的全限定名称(完整路径);
        FileInfo.Directory:获取文件所在目录,返回类型为DirectoryInfo;
        FileInfo.DirectoryName:获取文件所在目录的路径(完整路径);
        FileInfo.Length:获取文件的大小(字节数);
        FileInfo.IsReadOnly:获取文件是否只读;
        FileInfo.Attributes:获取或设置指定文件的属性,返回类型为FileAttributes枚举,可以是多个值的组合
        FileInfo.CreationTime、FileInfo.LastAccessTime、FileInfo.LastWriteTime:分别用于获取文件的创建时间、访问时间、修改时间;

     三、获取文件路径信息

     //获取当前运行程序的目录
                string fileDir = Environment.CurrentDirectory;
                Console.WriteLine("当前程序目录:"+fileDir);
    
                //一个文件目录
                string filePath = "C:\JiYF\BenXH\BenXHCMS.xml";
                Console.WriteLine("该文件的目录:"+filePath);
    
                string str = "获取文件的全路径:" + Path.GetFullPath(filePath);   //-->C:JiYFBenXHBenXHCMS.xml
                Console.WriteLine(str);
                str = "获取文件所在的目录:" + Path.GetDirectoryName(filePath); //-->C:JiYFBenXH
                Console.WriteLine(str);
                str = "获取文件的名称含有后缀:" + Path.GetFileName(filePath);  //-->BenXHCMS.xml
                Console.WriteLine(str);
                str = "获取文件的名称没有后缀:" + Path.GetFileNameWithoutExtension(filePath); //-->BenXHCMS
                Console.WriteLine(str);
                str = "获取路径的后缀扩展名称:" + Path.GetExtension(filePath); //-->.xml
                Console.WriteLine(str);
                str = "获取路径的根目录:" + Path.GetPathRoot(filePath); //-->C:
                Console.WriteLine(str);
  • 相关阅读:
    Fractal
    加工生产调度/爬山Mountain Climbing
    魔板 Magic Squares
    USACO Section 1.5
    USACO Section 1.4(有技巧的枚举)
    卷积神经网络 CNN
    优化算法
    评价分类器的好坏
    梯度消失 / 梯度爆炸以及Xavier初始化
    Dropout
  • 原文地址:https://www.cnblogs.com/xbding/p/15532121.html
Copyright © 2011-2022 走看看