• 文件、文件夹的操作


     

     1. 文件的管理(File)  

      1). 读取文件   

      ->文件的路径  

       ->文件的格式(gb2312、utf-8)   

         Encoding.Default->应用到文件内容的编码(系统默认编码)   

         Encoding.GetEncoding("gb2312")->换成国际编码

       2). 所有的文件操作都在System.IO里面   

      ->读取全部的文本,返回一个string:ReadAllText   

      ->读取每一行的文本,返回一个string数组:ReadAllLines    

        ->遇到回车将前面的文本作为一项放到数组中    

        ->读取文本内容,将文本内容的每一行作为数组中的一项    

        ->将所有文本读入数组中     

      3). 写文件使用File方法,当文件不存在时,会自动创建;如果文件操作,会将文件内容覆盖

        4). 文件的操作:   

      ->文件操作都要引用System.IO这个命名空间 ,文件操作都在类File中   

      ->读文件    

        ->ReadAllLines(路径,编码格式);     ->返回数组,是一行一行的读    

        ->ReadAllText(路径,编码格式);     ->返回字符串,换行符是\r\n   

      ->写文件    

        ->WriteAllText(路径,字符串内容,编码格式);    

        ->WriteAllLines(路径,字符串数组,编码格式);   

        ->追加文件    ->APPendAllText

      5). 文件管理   

      ->Exist  判存   

      ->Create 创建   

      ->Move  移动   

      ->Cope  复制   

      ->Delete 删除

    2. 文件夹的管理(Directory)   文件夹的管理相比文件的管理要简单:  

    ->1)判存     

      ->Directory.Existe(文件夹的路径);返回bool类型  

    ->2)创建   

      ->Directory.CreateDirectory(要创建文件夹的路径);  

    ->3)删除    

      ->Directory.Delete(要删除的文件夹);  

    ->4)移动   

      ->Directory.Move(要移动的文件夹的路径,移到目的地的路径);   

    3. 问题

       不管是文件还是文件夹在移动或复制的时候,可能会遇到同名的情况;或者文件路径没有写全、目标文件夹不存在等问题   

      例如:将D:\1.txt文件,移到D:\1\1.txt,可能会出现以下问题:    

        ->这样写就造成了文件路径不全:File.Move(@"D:\1.txt", @"D:\1");     

          ->解决方案:补全路径名    

        ->如果D盘没有名字为1的文件,这样写就是目标文件夹不存在:File.Move(@"D:\1.txt", @"D:\1\1.txt");     

          ->解决方案:先创建文件夹1    

        ->如果在1这个文件夹里有1.txt这个文件,还这样写就会异常:File.Copy(@"D:\1.txt", @"D:\1\1.txt");     

          ->解决方案:用try-catch捕获异常;或者把原来的文件覆盖掉:File.Copy(@"D:\1.txt", @"D:\1\1.txt",true );

    4. 获得文件夹下的文件与文件夹  

      获得文件:   

        ->Directory.GetFiles(指定文件夹的路径,*.后缀名(指定的文件类型));返回一个数组,不要第二个参数,则返回所以文件  

      获得文件夹:   

        ->Directory.GetDirectory(指定文件夹的路径,*.后缀名(指定的文件类型));返回一个数组,不要第二个参数,则返回所以文件夹  

      用foreach遍历出文件或文件夹的名字:   

        ->foreach(string item in arrayName(返回数组的名字))  

          {    

            int index=item.LastIndexOf('\\');    

            string str = item.Substring(index + 1);    

            Console.ReadLine(str);   

         }   

  • 相关阅读:
    pickle示例
    Python 升级致yum 问题,pip 异常
    jdk 环境
    zookeeper
    Kafka-Monitor
    Kafka
    nxlog 日志采集
    elasticsearch 基本配置
    elasticsearch 单机多实例
    Elaticsearch 集群
  • 原文地址:https://www.cnblogs.com/kingboy2008/p/2857504.html
Copyright © 2020-2023  润新知