Path: 对文件或目录的路径进行操作(很方便)【只是对字符串的操作】

1.目录和文件操作的命名控件System.IO
    2.string Path.ChangeExtension(string path, string extension) (*)
          修改文件的后缀,“修改”支持字符串层面的,没有真的给文件改名
    3.string s = Path.ChangeExtension(@"C:\temp\F3.png", "jpg")
    4.string Path.Combine(string path1, string path2)
          将两个路径合成一个路径,比用+好,可以方便解决不加斜线的问题,自动处理路径分隔符的问题
    5.string s = Path.Combine(@"c:\temp","a.jpg")
    6.string s = Path.GetDirectoryName(string path) (*)
          得到文件的路径名。Path.GetDirectoryName(@"c:\temp\a.jpg")
    7.string s = Path.GetExtension(string path) 得到文件的扩展名
    8.string s = Path.GetFileName(string path) 得到文件路径的文件名部分

例子:Path.GetFileName()获取文件名当目录为c:\windows\test时,

可获取最后一个目录名,但当目录路径为c:\windows\test\ 时,不可以
    9.string s = Path.GetFileNameWithoutExtension(string path) 得到去除扩展名的文件名
    10.string s = Path.GetFullPath(string path) 得到文件的全路径。可以根据相对路径获得绝对路径。
    11.string s = Path.GetTempFileName()  得到一个唯一的临时文件名(*)
    12.string s = Path.GetTempPath() 得到临时文件夹的路径(*)

Directory: 对目录进行操作

Directory和DirectoryInfo
    1.void Delete(string path, bool recursive)   删除目录, recursive表示是否递归删除,如果recursive为,false则只能删除空目录  
    2.bool Exists(string path)     判断目录是否存在
    3.string[] GetDirectories(string path)  得到一个目录下的子目录
    4.string[] GetDirectories(string path, string searchPattern, SearchOption searchOption) 通配符查找目录下的子目录,可以搜索到隐藏文件。
    5.static string[] GetFiles(string path)  得到一个目录下的文件
    6.string[] GetFiles(string path, string searchPattern, SearchOption searchOption)   通配符查找目录下的文件
    7.DirectoryInfo GetParent(string path)  得到目录的父目录
    8.move()  //移动、剪切。只能在同一个磁盘中。目录没有Copy方法。可以使用Move()方法实现重命名。
    9.create() //创建目录

获取当前exe文件执行的路径:
    1.-->Assembly.GetExecutingAssembly().Location;
    2.-->Application.StartupPath.
    3.不要用:Directory.GetCurrentDirectory();获取应用程序的当前工作目录。

因为这个可能会变,通过使用OpenFileDialog

4.或者手动设置Directory.SetCurrentDirectory()
    5.做WinForm程序时会常用到。
 
 
 
                                操作文件file
1  编码的原因
   为什么会产生乱码?
 只有文本文件才会乱码,因为文本存储时采用的编码,与读取时采用的编码不一致,就会造成乱码问题
  解决:采用统一的编码就ok了
  Enconding.Default 表示简体中文
  Enconding.GetEncoding('GB2312')
2 判断目录是否存在 File.Exists();

path类和directory类对文件的路径或目录进行操作的更多相关文章

  1. File类和Directory类

    File类和Directory类分别用来对文件和各种目录进行操作,这两类可以被实例化,但不能被其他类集成. 1. File类(静态类) File类支持对文件的基本操作,它包括用于创建.复制.删除.移动 ...

  2. File类、FileInfo类、Directory类、DirectoryInfo类

    File类.Directory类,都是静态类,可以直接使用类名 FileInfo类.DirectoryInfo类,都是动态类,需要new对象,通过对象来操作 [文件的创建.复制.移动.删除]using ...

  3. 【转】C#路径中获取文件全路径、目录、扩展名、文件名称

    C#路径中获取文件全路径.目录.扩展名.文件名称 原文链接:https://www.cnblogs.com/JiYF/p/6879139.html 常用函数 需要引用System.IO   直接可以调 ...

  4. C#路径中获取文件全路径、目录、扩展名、文件名称

    C#路径中获取文件全路径.目录.扩展名.文件名称常用函数 需要引用System.IO 直接可以调用Path的静态方法 class Program { static void Main(string[] ...

  5. Objective-C:Objective-C:文件中一些对目录进行操作的函数

    IO文件中,一些对目录进行操作的函数:获取.切分.组合 一些对目录进行操作的函数: 获取用户的姓名:(NSString*)NSUserName() ;    ———>NSString *Str ...

  6. .net学习之集合、foreach原理、Hashtable、Path类、File类、Directory类、文件流FileStream类、压缩流GZipStream、拷贝大文件、序列化和反序列化

    1.集合(1)ArrayList内部存储数据的是一个object数组,创建这个类的对象的时候,这个对象里的数组的长度为0(2)调用Add方法加元素的时候,如果第一次增加元神,就会将数组的长度变为4往里 ...

  7. C#文件操作常用相关类(Directory类、File类、Path类)

    1.文件操作常用相关类 1)File //操作文件,静态类,对文件整体操作.拷贝.删除.剪切等 2)Directory //操作目录(文件夹),静态类 3)DirectoryInfo //文件夹的一个 ...

  8. 文件及文件夹操作- File类、Directory 类、FileInfo 类、DirectoryInfo 类

    文件及文件夹操作: C/S:WinForm可以操作客户端文件 Client ServerB/S:Brower Server 命名空间:using system .IO; 1. File类: 创建:Fi ...

  9. Path类与Directory类与File类

    阅读目录 开始 Path 对路径 字符串进行操作 获得后缀 能合并路径 获取文件名 Directory和DirectoryInfo  对目录进行操作 判断目录是否存在 创建目录 删除目录 获取目录下所 ...

随机推荐

  1. 排队论的C实现

    大家好,我是小鸭酱,博客地址为:http://www.cnblogs.com/xiaoyajiang 以下鄙人实现了排队论思想,语言是C语言   #include<stdio.h> #in ...

  2. SVN取消记住密码

    百度上面找的,SVN取消记录密码的方法: 找到这个文件夹首先需要在文件夹选项里面,显示所有的文件和文件夹,不能隐藏. SVN取消记住用户名的方法 打开C:\Documents and Settings ...

  3. mysql 导出导入sql

    >mysqldump -u用户名 -p密码 -h主机名 数据库名 > 20150116mw_pm_db.sql mysql> source /home/y/my_work/20150 ...

  4. UVA12186--树型DP

    树型DP第一题...就是从boss到底层员工是一个树型结构,底层员工想加薪,如果每个boss都有超过T%的员工要求加薪,他就会往更高的bOSs传达,问如果让根节点的大boss接到加薪要求,最少要有多少 ...

  5. 【HDU2122】Ice_cream’s world III(MST基础题)

    2坑,3次WA. 1.判断重边取小.2.自边舍去. (个人因为vis数组忘记初始化,WA了3次,晕死!!) #include <iostream> #include <cstring ...

  6. ios相册

    1, 系统图片剪裁的问题 http://www.cnblogs.com/liulunet/archive/2013/01/19/2866399.html

  7. LVM(1)

    DM: DM: Device Mapper    逻辑设备        RAID, LVM2        DM: LVM2    快照    多路径

  8. WPF最基本的4个引用

    Windowsbase Windows基本类库 PresentationCore wpf核心类库 PresentationFramework wpf框架 System.Axml 系统类库

  9. java算法之冒泡排序法

    由此可见:N个数字要排序完成,总共进行N-1趟排序,每第 i 趟的排序次数为 (N-i) 次,所以 可以用双重循环语句,外层控制循环多少趟,内层控制每一趟的循环次数,即   for(inti=0;i& ...

  10. Git的一些用法(建立新的branch)

    建立新的branch和查看全部的branch(kk的代码是基于现有的branch) 切换到branch kk: 当然我们也能够在android studio里操作: 注意切换的时候代码会丢失,必须先c ...