• 文件及IO操作(二)


    FileInfo操作

    下表描述了FileInfo类的一些常用属性:

    属性

    描述

    Attributes

    获得或设置当前文件相关的属性。这个属性继承自FileSystemInfo。

    CreationTime

    获取或设置当前文件的创建时间。这个属性继承自FileSystemInfo。

    Directory

    获取文件属于的目录的实例。

    Exists

    获得表示文件存在否的布尔值。

    Extension

    获取包含文件扩展的字符串。这个属性继承自FileSystemInfo。

    FullName

    获取包含文件全部路径的字符串。这个属性继承自FileSystemInfo。

    LastAccessTime

    获取文件的最后访问时间。这个属性继承自FileSystemInfo。

    LastWriteTime

    获得文件最后写入的时间。这个属性继承自FileSystemInfo。

    Length

    获得文件的大小。

    Name

    获取包含给定文件名的字符串。

    string path=@"e:a.txt";

    FileInfo file=new FileInfo(path);//path表示文件地址;

    文件的属性:

    1 file.FullName;//获取文件全地址
    2 file.Length.ToString() + "btyes";//获取文件大小
    3 
    4 file.CreationTime.ToLongTimeString();//获取文件的创建时间
    5 
    6 file.LastAccessTime.ToLongTimeString();//获取文件最后访问时间
    7 
    8 file.LastWriteTime.ToLongTimeString();//获取文件最后的修改时间
    View Code

    可以读取和保存路径:

    1 file.WriteAllText(路径,内容);//把文件复制到路径指向的文件(如果没有改文件则自动创建,有则覆盖)
    2 
    3 file.ReadAllText(路径);//读取路径所指向文件的内容
    View Code

    获取目录的完整路径:

    1 string dirname= file.DirectoryName;
    View Code

    DirectoryInfo操作

    下表描述了DirectoryInfo类的一些公用属性:

    属性

    描述

    Attributes

    获得或设置当前文件的相关属性。这个属性继承自FileSystemInfo。

    CreationTime

    获得或设置当前文件的创建时间。这个属性继承自FileSystemInfo。

    Exists

    获得表示目录是否存在或不存在的布尔值。

    Extension

    获得包含文件扩展名的字符串。这个属性继承自FileSystemInfo。

    FullName

    获取包含目录全部目录的字符串。这个属性继承自FileSystemInfo。

    LastAccessTime

    获得最后访问目录的时间。这个属性派生自FileSystemInfo。

    Name

    得到给定文件的包含名称的字符串。

    下表描述了DirectoryInfo类的一些常用的方法:

    方法

    描述

    Create

    创建一个目录。

    CreateSubdirectory

    创建一个子目录。

    Delete

    删除一个目录。

    GetDirectories

    在当前目录中匹配规则之后,返回目录。它也允许你在目录中搜索子目录。

    GetFiles

    在当前目录中返回文件。

     

    string paths=@"e:1";

    DirectoryInfo dir=new DirectoryInfo(paths);

    获取目录下的文件及文件夹的方法:

    1 dir.GetFiles();//得到“1”文件夹下的所有文件,返回存有所有文件的FileInfo数组
    2 
    3 dir.GetDirectories();//的到“1”文件夹下的所有文件夹
    View Code

    判断目录是否存在:

    1 if (!dir.Exists)//也可以Directory.Exists(paths)来实现
    2   {
    3       throw new FileNotFoundException(path + "目录没有找到");
    4   }
    View Code

    获取上一级目录的目录名:

    string parentpath= dir.Parent.FullName;
    //
    string parentpath=Directory.GetParent(paths).ToString();
    View Code

    删除选择的文件夹:

    dir.Delete(true);//等价于Directory.Delete(dir.FullName,true);
    View Code

    创建文件夹:

    dir.Create();
    View Code

    Path操作

    下表描述了Path类的静态方法: 

     
    ChangeExtension 更改路径字符串的扩展名
    Combine(String, String)  将两个字符串组合成一个路径
    GetDirectoryName 返回指定路径字符串的目录信息
    GetExtension 返回指定的路径字符串的扩展名
    GetFileName 返回指定路径字符串的文件名和扩展名
    GetFileNameWithoutExtension 返回不具有扩展名的指定路径字符串的文件名
    GetFullPath  返回指定路径字符串的绝对路径
    GetInvalidFileNameChars 获取包含不允许在文件名中使用的字符的数组
    GetInvalidPathChars 获取包含不允许在路径名中使用的字符的数组
    GetPathRoot 获取指定路径的根目录信息
    GetRandomFileName  返回随机文件夹名或文件名
    GetTempFileName 创建磁盘上唯一命名的零字节的临时文件并返回该文件的完整路径
    GetTempPath 返回当前用户的临时文件夹的路径
    HasExtension 确定路径是否包括文件扩展名
    IsPathRooted 获取指示指定的路径字符串是否包含根的值

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    获取指定路径的文件名:

    1 string a = Path.GetFileName(writepath);//返回指定路径字符串的文件名和扩展名
    2 string a = Path.GetFileName(writepath);//返回指定路径字符串的目录信息
    View Code

    合并路径:

     1 /*
     2       2.  合并两个字符路径字符串
     3        public static string Combine(string path1,string path2)
     4        参数:
     5          path1(String) ,第一个路径
     6          path2(String), 第二个路径
     7          返回值:
     8          String ,合并后的路径字符串。
     9          常见的合并操作为:
    10 */       
    11            string path3 = @"e:	est";
    12            string path4 = @"1.txt";
    13            string s5 = Path.Combine(path3, path4);
    14            Console.WriteLine(s5); //返回:"c:	est1.txt"
    View Code

    更改路径字符串的扩展名:

    1 /*
     2       更改路径字符串的扩展名
     3         public static string ChangeExtension(string path,string extension)
     4           参数:
     5             path(String):要修改的路径信息.
     6             extension(String):新的扩展名。
     7             返回值:
     8             String,修改后的路径字符串。
     9 */            
    10               //如果 extension 是 null,则返回的字符串包含指定的路径,其扩展名已移除(点还在)。
    11               string str1 = Path.ChangeExtension(@"e:	est1.txt", "");//返回e:	est1.
    12               Console.WriteLine(str1);
    13               //如果 path 不具有扩展名,并且 extension 不是 null,则返回的路径字符串包含 extension,它追加到 path 的结尾。
    14               string str2 = Path.ChangeExtension(@"e:	est2", ".txt");//返回D:	est2.txt
    15               Console.WriteLine(str2);  
    16               //仅更改路径字符串中的扩展名,并不会改变实际文件的扩展名或者目录。
    View Code

    获取指定路径字符串的目录信息:

     Console.WriteLine(Path.GetDirectoryName(@"e:	est	est11.txt"));//返回文件的目录名
    View Code

    实例:

     1 static void Main(string[] args)
     2         {
     3             if (args == null || args.Length < 1)
     4                 return;
     5             string myPath = args[0];
     6             Console.WriteLine("目录名称:{0}", Path.GetDirectoryName(myPath));
     7             Console.WriteLine("路径扩展名:{0}", Path.GetExtension(myPath));
     8             Console.WriteLine("文件名:{0}", Path.GetFileName(myPath));
     9             Console.WriteLine("不带扩展名的名称:{0}", Path.GetFileNameWithoutExtension(myPath));
    10             Console.WriteLine("绝对全路径:{0}", Path.GetFullPath(myPath));
    11             Console.WriteLine("根目录:{0}", Path.GetPathRoot(myPath));
    12             Console.WriteLine("不带根目录的路径:{0}", Path.GetFullPath(myPath).Remove(0, 3));
    13             Console.ReadKey();
    14         }
    View Code
  • 相关阅读:
    零代码实现接口自动化测试RF框架实践
    【js】script标签中的async和defer属性
    【vue】preload与prefetch的使用和区别
    【js】对象属性名为对象时
    【vue】 vuedevtoos 工具
    【js】call、apply和bind的区别
    【js】防抖节流理解及应用场景
    Arthas(3):jvm相关命令
    frp:通过公网域名访问内网机器
    Arthas(5):monitor watch trace 相关
  • 原文地址:https://www.cnblogs.com/Dream-High/p/3390609.html
Copyright © 2020-2023  润新知