1.Path类,查看编译器可知,这个类是个静态的工具类,需要注意的是,这个类是对字符串的操作,与文件无关。

1)ChangeExtension()方法,修改文件的后缀(调用这个方法,如果给第二个参数制定为"",则表示移除扩展名)。

            //注意,C:\a\bb\ccc\ddd\1.txt这个不是一个真实存在的物理路径
string sPath = Path.ChangeExtension(@"C:\a\bb\ccc\ddd\1.txt", "*.xls");
Console.WriteLine(sPath);

运行结果如下:

aaarticlea/png;base64,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" alt="" />
 

2)Combine()方法,路径的合并。

             string s1 = @"c:\a\b";
string s2 = "c.doc";
string fullPath = Path.Combine(s1, s2);
Console.WriteLine(fullPath);

运行结果如下:

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHIAAAAdCAIAAAD5Ha+lAAAA80lEQVRoge2XUQrEIAxEvf+peoq9TH/2a8HaJM2osxWZ9yUS4vgilJZTEChvB9gTaaVw0foRk2i1FjEFaaUgrRSklcIiWo8fmxw0rhWN6NV7t52uYDmt5qjRlIE+aL+bd7QeFWYgb98r7qjPTC7ob+L1jw/tnEGjte4CdQyKk2bjo00X+ZxePbrOEmhFCV6B2RM1NXLVf6isgbQGjpo0yYjorcz+GRbSem/9qLVcH2kmYt8k0JwjWnsUQ5+sJLWmuzKzvql8nFyc09z38nh9hjws8juwG9JKQVopSCsFaaUgrRSklYK0UpBWCtJKQVopSCuDL1AAgWVC06pBAAAAAElFTkSuQmCC" alt="" />

3)获取路径的目录部分和文件部分

            string path = @"C:\DRIVERS\WIN\AUDIO\SAII\SAII\CxHDAudioAPI.dll";
Console.WriteLine(Path.GetDirectoryName(path)); //获取目录部分
Console.WriteLine(Path.GetFileName(path)); //获取文件名
Console.WriteLine(Path.GetFileNameWithoutExtension(path)); //获取文件名(不要扩展名)
Console.WriteLine(Path.GetExtension(path)); //获取文件扩展名
Console.ReadKey();

运行结果如下:

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAP4AAABKCAIAAAAUr35lAAADpElEQVR4nO2bQZLbMAwE9f9X6RX5TC657CqyAQwBSrZsofuQkkESA1DjVIpmlr8ALVmuLgDgGrA+NOXH+n8AmvHf+gtAK7A+NAXrQ1OwPjTlyfrrjrmE6yNRPBp6CkbPNlU1v65flCEm2I9JlXy/domrmO83kyc5v7TPF+r+sLd+tPui9Ci+7uxo43qoOtmd5tYQLYx0q3VaOZt/CV5Vpt+hup4/7NfV1RKZ+FW6Azbrizexr6ZaR+bZTVWaLJZU82T2wc7P9KgnJOss7duL6olSZSTeqTsgsr6b+nVd6Sb169RLMn2JSLLOSC7fV77ffP6J+RnR5Codf4+uIml9QfXtbswlEXmG8Uz928ftT3c0Eh22pjentETUk5+wBPsjRN2Ijl+oG3Lc+lZ4+Ebz7yOT38bdXpJvZZ9ES7uiQ+nVUO03WY/oOhOM6hQZRPxaXZ8j/9aPtKvPbumlyWKJyFNam69T13Zwc0r7Jlo+Uk8mbcRVug7JE571F5HKdnXkFe5Fdf961/RWlurPRISEbSfzXK1Hzz+lHpFZK16r+8y55/qrwQ7ZWoVo1LxVmctv5ZbYOqIvUbBbvFgrgmIrtFCmX9FIpk5dz4foPsCvudAUrA9NwfrQFKwPTcH60BSsD03B+tCU6XP96Px1fUSsSnJKKn0YnDw/rtZ58jk0nMv0fX0xeft4iqWiYvJ5tAV1C6+rE+tfTPIOjyXpG/drUH3rR1xSrfOIItb/JoY3NyNPnGX9YZ4NN25LnfO3GBoS1alTlSTgfDKXloV9826LfFZ9dlXm8gjL5n1ZrXNCAl7C9P/SGlrq6Xk16DxVS+m1rsVFy3lfVuuckICXMH1fX7xyd+iI3TOWmsiD9VuTOeEp2bc6/7usv/4y1E2mctXhHQzP9edsXbLIfrKbSku48aGuOzk/FAWrdboq8A74NReagvWhKVgfmoL1oSlYH5qC9aEpWB+awn19m58T9xZwX1+3ALeF+/rDIbgn3NcfDsE94b6+rT9ShFvBfX3RrzsEN4H7+osH1r8/3Nd3twXr3x/u66/Bl8odgvvAr7nQFKwPTcH60BSsD03B+tAUrA9NwfrQlLz1oyNze/7NuTh8AaW/9cUPQMnJAJ8C1oemZKzv3hp4Go1WnVYowLkMrR/dgXEnZOIAHwHWh6ZgfWhKdGl5m4D14Z4Mrf8UtN+EPToO8EHway40BetDU7A+NAXrQ1OwPjQF60NTsD40BetDU7A+9OQfIrXQcaBDsUQAAAAASUVORK5CYII=" alt="" />

4)获取指定文件的全路径(GetFullPath)

            string fullPath = Path.GetFullPath("1.txt");
Console.WriteLine(fullPath);

运行结果如下:

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAWkAAAAeCAIAAABhSXjUAAADFklEQVR4nO2aQZbbMAxDff9T+RS9TDfd9KWOSIAgrWSmGfyVI1MQSKqctJ3jtzHG9Dm+2oAx5r/Es8MYM8Gzwxgz4e/s+GWMMR3+zY7DmMB5ntfnCN+FAswn4NlhCMvsIG/Tdc+OT8azwxA8OwzEs8MQBn9nKbd4oHwIj9mxscfl3Xrp7dH1997mLTovLQ7JN66Pb8L5/KWj3NttFg9QpLi+qLPx5pQHvfqIIdfvHfH28L084PvMjtKGuKV77kxhiw4/Ai2SOizekNWlqtwM8aMHi29b+qLUrpu8JalSakv8E2R2LGfwi4K2zJ3tg/+BiQFf4pz4uSNVvuK5L4PgCBMBqaGAJbJsjbLeRdFXznqpH1KfXX7u+kezI70TepvTV6gc6fr5DJKN/RZ9IudnYFlHHkT/SCqetTynfuK6kh1ZiR+jn+NyPdLgNNnUku6TSJWL4rlpeZE+OgI9H6DvgzqknAHigcQ3iLOjq9VNm4i3eoCk9HNRpqVCuhGZvPk824KyaNlOU04/HvSbyIFBpS6tjuvf1Sc6rfiBH7SIQMGpt654gvi9g9NKG/XsQQwjW0QzLZ9cOW1DXFFyic+xDgOpVmroLF7huIjelsEkQKzDIFjf0u2L0iDRD4lMIcFpN1viCXf+vYP7uNMw8lz6EX0S/ZvKei5ivrMSianxgGutCIsg+cjt8QCer1i0rn53r2JY1OSR5d74ilesjfj/LOnZqb/SmdhjUmveV9HnQJ8ri3ktBlr5is/EGK9YfJt+LOsQxWO+pW1ur5QSi5Pq3+lLGZ/WASWCInkxkU9xXWXv73dcrUSdch3lQ6qp6Cs+Y0B6EA9OE4meiXmSI7dEkp3le924PD/UyFnoIzJf+l8KS+pwyvUXzaTrih909MAPsoQ2orOI1Tb+vdI307rTPGzedZnzeV6QxfiWxPxABn3/7nh2vB/0w6QV3BKZmTzAzyXyc+zw7MC8umXvxrPDINAV51ffs+On4NlhjJng2WGMmeDZYYyZ4NlhjJng2WGMmeDZYYyZ4NlhjJng2WGMmeDZYYwZ8Af3CHMbR+V/4wAAAABJRU5ErkJggg==" alt="" />

5)读取文件(ReadAllText,大文件不适用)

             string Msg = File.ReadAllText("1.txt");
Console.WriteLine(Msg);

运行结果如下:

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAATQAAAAeCAIAAAAto3UsAAABEUlEQVR4nO3aUW6CQBiFUfa/qn8V3Uxf+tDaEoFhHCleyTlPZqL0g+TGxHT6BCJNrw4A1hknhDJOCPUzzg8gzN84JyCKcUIo44RQxgmhfsdZVVX1fTh/3VAzPecP0aPnSj0jnhln+83nP1w9emJ7RhinHj0n9IzoGWfNLK/Qf96+TuPjevS8e8+Iu3Eu/17jJhuHy/Pd66x+XI+ea/SM2P3m3LrJreit87GHq0fPNXpGdI6zcYWXPFw9et6rZ8RD41yNOORm6mb3/Xr05Pcc45kfhGqh//wuo//h6tGT33OMhP8Q+sfbG6KnTc9JEsYJrDBOCGWcEMo4IZRxQijjhFDGCaGME0IZJ4QyTghlnJDpCwrBa1KXzI88AAAAAElFTkSuQmCC" alt="" />

6)获取临时目录

 Console.WriteLine(Path.GetTempPath());  //返回系统的临时文件夹路径

临时目录,很多软件都会用到,比方直接用解压软件打开一个压缩包(不是解压),那么看到的文件就会放在临时文件夹中。

GetTempFileName()  得到一个唯一的临时文件名,这个方法会在临时目录中创建一个0字节的文件。

C# IO操作(一)Path类的常用方法的更多相关文章

  1. 【C# IO 操作】 Path 路径类 |Directory类 |DirectoryInfo 类|DriveInfo类|File类|FileInfo类|FileStream类

    Directory类 Directory类 是一个静态类,常用的地方为创建目录和目录管理. 一下来看看它提供的操作. 1.CreateDirectory 根据指定路径创建目录.有重载,允许一次过创建多 ...

  2. java的IO操作:System类对IO的支持。

    目标: 1,掌握SYStem对IO的三种支持: system.out system.in system.err 2,掌握system.out及system.err的区别. 3,掌握输入,输出重定向. ...

  3. IO流3 --- File类的常用方法2 --- 技术搬运工(尚硅谷)

    File类的判断功能 @Test public void test5(){ File file = new File("hello.txt"); //判断是否是文件目录 Syste ...

  4. IO流2 --- File类的常用方法1 --- 技术搬运工(尚硅谷)

    File类的获取功能 @Test public void test2(){ File file1 = new File("hello.txt"); File file2 = new ...

  5. C#中Path类的常用方法

    场景 打开VS,输入Path,我们可以看到其定义. 都是静态方法,所以我们可以使用类名直接调用. 实现 新建命令行程序,编码如下: string str = @"C:\Users\Admin ...

  6. 使用File类、StreamRead和StreamWrite读写数据、以及Path类操作文件路径和Directory

    1.File类的概念: File类,是一个静态类,主要是来提供一些函数库用的.静态实用类,提供了很多静态的方法,支持对文件的基本操作,包括创建,拷贝,移动,删除和 打开一个文件. File类方法的参量 ...

  7. C# IO操作(二)File类和Directory类的常用方法

    本篇主要介绍一些常用的IO操作,对文件和目录的操作:留给自己复习之用. 1.创建文件 string sPath1=Path.GetDirectoryName(Assembly.GetExecuting ...

  8. Java文件IO操作应该抛弃File拥抱Path和Files

    Java7中文件IO发生了很大的变化,专门引入了很多新的类: import java.nio.file.DirectoryStream;import java.nio.file.FileSystem; ...

  9. [19/04/04-星期四] IO技术_CommonsIO(通用IO,别人造的轮子,FileUtils类 操作文件 & IOUtilsl类 操作里边的内容 )

    一.概念 JDK中提供的文件操作相关的类,但是功能都非常基础,进行复杂操作时需要做大量编程工作.实际开发中,往往需要 你自己动手编写相关的代码,尤其在遍历目录文件时,经常用到递归,非常繁琐. Apac ...

随机推荐

  1. keil中 code、data、idata的区别

    存储器类型 本C51编译器支持8051及其派生类型的结构能够访问8051的所有存储器空间具有下表列出的存储器类型的变量都可以被分配到某个特定的存储器空间.存储器类型 描述code 程序空间64 Kby ...

  2. nyoj 14 会场安排问题

    会场安排问题 时间限制:3000 ms  |  内存限制:65535 KB 难度:4   描述 学校的小礼堂每天都会有许多活动,有时间这些活动的计划时间会发生冲突,需要选择出一些活动进行举办.小刘的工 ...

  3. [iOS基础控件 - 4.5] 猜图游戏

    A.需要掌握的 1.添加图片资源(暂时认为@2x跟非@2x代表同一张图片) 2.搭建UI界面* 文本标签* 4个按钮* 中间的图片 3.设置状态栏样式 4.监听下一题按钮的点击 5.延迟加载数据* 加 ...

  4. [OC Foundation框架 - 14] NSNull

    在NSDictionary中,nil代表结束,允许存入 使用NSNull代替   int main(int argc, const char * argv[]) { @autoreleasepool ...

  5. Android进阶之大话设计模式

    一般来说,常用的设计模式有以下八种:单例.工厂.观察者.代理.命令.适配器.合成.访问者 单例模式:目的是为了让系统中只有一个调用对象,缺点是单例使其他程序过分依赖它,而且不同单例运行在不同进程中,使 ...

  6. 升级SUSE Linux内核的完整步骤!

    http://blog.sina.com.cn/s/blog_491529d60100061h.html 安装完SLED 10后发现仍然有“热启动网络不通”的问题,原因是内核版本较低,于是升级到2.6 ...

  7. 【IOS界面布局】横竖屏切换和控件自适应(推荐)

    [IOS界面布局]横竖屏切换和控件自适应(推荐) 分类: [MAC/IOS下开发]2013-11-06 15:14 8798人阅读 评论(0) 收藏 举报 横竖屏切换 自适应 第一种:通过人为的办法改 ...

  8. 【48】认识template元编程

    1.TMP(template metaprogramming),模版元编程有两个效力:第一,它让某些事情更容易:第二,可将工作从运行期转移到编译期.

  9. iOS开发——Swift篇&Swift关键字详细介绍

    Swift关键字详细介绍 每一种语言都有相应的关键词,每个关键词都有他独特的作用,来看看swfit中的关键词: 关键词: 用来声明的: “ class, deinit, enum, extension ...

  10. highcharts js报表工具(报表插件)

    highcharts报表工具(报表插件.图表工具) highcharts效果在线演示(可查看源代码):  http://www.hcharts.cn/demo/index.php?p=56 Highc ...