System.IO.Path为路径的操作封装了很多很有的东西,利用该类提供的方法能够快速处理路径操作的问题。下面详细了解一下。

1、属性

  属性太复杂了,反映什么系统平台的信息,看不懂,等以后看得懂了再补充。

2、方法

ChangeExtension          更改路径字符串的扩展名。       

Combine               合并两个路径字符串。       

GetDirectoryName           返回指定路径字符串的目录信息。        

GetExtension            返回指定的路径字符串的扩展名。        

GetFileName              返回指定路径字符串的文件名和扩展名。        

GetFileNameWithoutExtension   返回不具有扩展名的指定路径字符串的文件名。        

GetFullPath              返回指定路径字符串的绝对路径。      

GetInvalidFileNameChars        获取包含不允许在文件名中使用的字符的数组。        

GetInvalidPathChars          获取包含不允许在路径名中使用的字符的数组。        

GetPathRoot              获取指定路径的根目录信息。       

GetRandomFileName          返回随机文件夹名或文件名。        

GetTempFileName          创建磁盘上唯一命名的零字节的临时文件并返回该文件的完整路径。        

GetTempPath            返回当前系统的临时文件夹的路径。     

HasExtension            确定路径是否包括文件扩展名。        

IsPathRooted            获取一个值,该值指示指定的路径字符串是包含绝对路径信息还是包含相对路径信息。

 
            string str = "images/girl.jpg";
string extend = Path.GetExtension(str);
Console.WriteLine(extend); //输出 .jpg string str1 = @"C:\App_Data";
string str2 = @"images\girl.jpg";
string newPath = Path.Combine(str1, str2);
Console.WriteLine(newPath); //输出C:\App_Data\images\girl.jpg //会自动补充反斜杠\ string str = @"C:\girl.jpg";
string newPath = Path.ChangeExtension(str, "gif"); //更改扩展名,但不改变原值
Console.WriteLine(str + " 更改扩展名之后: " + newPath); //newPath为:C:\girl.gif string str = @"C:\App_data\upload\girl.jpg";
string dictory = Path.GetDirectoryName(str);
Console.WriteLine(dictory); //输出 C:\App_data\upload string str = @"C:\App_data\upload\girl.jpg";
string fileName = Path.GetFileName(str);
Console.WriteLine(fileName); //输出 girl.jpg string str = @"C:\App_data\upload\girl.jpg";
string fileNameWithOutEntension = Path.GetFileNameWithoutExtension(str);
Console.WriteLine(fileNameWithOutEntension); //输出 girl string str = @"/upload/girl.jpg";
string fullPath = Path.GetFullPath(str);
Console.WriteLine(fullPath); //输出 C:\upload\girl.jpg 这个东西也可以转换成绝对物理路径 char[] chArr = Path.GetInvalidFileNameChars();
foreach (char c in chArr)
{
Console.Write(c + " "); //输出很多不允许在文件名使用的字符
} char[] chArr = Path.GetInvalidPathChars();
foreach (char c in chArr)
{
Console.Write(c + " "); //输出很多不允许在路径中使用的字符
} string str = @"C:\App_data\upload\girl.jpg";
string rootInfo = Path.GetPathRoot(str);
Console.Write(rootInfo); //输出 C:\ string str = Path.GetRandomFileName();
Console.Write(str); //返回随机文件夹名或文件名 string str = Path.GetTempFileName(); //创建磁盘上唯一命名的零字节的临时文件并返回该文件的完整路径
Console.Write(str); //输出 C:\Users\Administrator\AppData\Local\Temp\temdw85.tmp string str = Path.GetTempPath();
Console.Write(str); //输出 C:\Users\Administrator\AppData\Local\Temp\ string str = @"C:\App_data\upload\girl.jpg";
bool hasExtension = Path.HasExtension(str); //确定路径是否含有扩展名,此处有.jpg返回true
Console.Write(hasExtension); string str = @"C:\App_data\upload\girl.jpg";
bool isPath = Path.IsPathRooted(str); //判断给定的路径是绝对路径还是相对路径,此处返回true如果是App_data\upload\girl.jpg则返回false
Console.Write(isPath); Console.ReadKey();

System.IO.Path类的更多相关文章

  1. [原]System.IO.Path.Combine 路径合并

    使用 ILSpy 工具查看了 System.IO.Path 类中的 Combine 方法 对它的功能有点不放心,原方法实现如下: // System.IO.Path /// <summary&g ...

  2. System.IO.Path文件路径类

    Path类的静态属性和方法,此类操作不影响物料文件. 属性 char a = System.IO.Path.VolumeSeparatorChar;//: char b = System.IO.Pat ...

  3. C#、.Net代码精简优化(空操作符(??)、as、string.IsNullOrEmpty() 、 string.IsNullOrWhiteSpace()、string.Equals()、System.IO.Path 的用法)

    一.空操作符(??)在程序中经常会遇到对字符串或是对象判断null的操作,如果为null则给空值或是一个指定的值.通常我们会这样来处理: .string name = value; if (name ...

  4. 详解C#中System.IO.File类和System.IO.FileInfo类的用法

    System.IO.File类和System.IO.FileInfo类主要提供有关文件的各种操作,在使用时需要引用System.IO命名空间.下面通过程序实例来介绍其主要属性和方法. (1) 文件打开 ...

  5. C#使用System.IO.Path获取文件路径、文件名

    class Program { static void Main(string[] args) { //获取当前运行程序的目录 string fileDir = Environment.Current ...

  6. System.IO.File类和System.IO.FileInfo类

    1.System.IO.File类 ※文件create, copy,move,SetAttributes,open,exists ※由于File.Create方法默认向所有用户授予对新文件的完全读写. ...

  7. System.IO.Directory类

    1.参考的博客:System.IO.Directory类和System.DirectoryInfo类(http://blog.sina.com.cn/s/blog_614f473101017du4.h ...

  8. 使用System.IO.Combine(string path1, string path2, string path3)四个参数的重载函数提示`System.IO.Path.Combine(string, string, string, string)' is inaccessible due to its protection level

    今天用Unity5.5.1开发提取Assets目录的模块,使用时采用System.IO.Path.Combine(string, string, string, string)函数进行路径生成 明明是 ...

  9. System.IO.Path 文件名、路径、扩展名 处理

    string filePath =@"E:/Randy0528/中文目录/JustTest.rar"; 更改路径字符串的扩展名.System.IO.Path.ChangeExten ...

随机推荐

  1. Python 3 并发编程多进程之进程池与回调函数

    Python 3 进程池与回调函数 一.进程池 在利用Python进行系统管理的时候,特别是同时操作多个文件目录,或者远程控制多台主机,并行操作可以节约大量的时间.多进程是实现并发的手段之一,需要注意 ...

  2. Ubuntu下dlib库编译安装

    安装libboost 按照dlib的说明安装始终不成功,参考machine learning is fun作者的指导installing_dlib_on_macos_for_python.md,需要首 ...

  3. Linux内核分析

    通过分析汇编代码理解计算机是如何工作的   网易云课堂<Linux内核分析>作业 实验目的: 通过反汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的 实验过程: 登陆实验楼虚拟机h ...

  4. 如何让.gitignore文件生效

    改动过.gitignore文件之后,在repo的根目录下运行 # 先将当前仓库的文件的暂存区中剔除 git rm -r --cached . # 再添加所有的文件到暂存区,这时.gitignore文件 ...

  5. maven clean 异常问题

    当使用`mvn clean`,报`maven… Failed to clean project: Failed to delete ..`时,如果你觉得这个文件删除成功或失败没有关系,可以使用如下命令 ...

  6. css括号风格

    1.nested 2.expanded 3.compact 压缩但是不去掉空格和注释 4.compressed 压缩并且去掉空格和注释,并且有的压缩变量名也会改变.

  7. 递归--练习6--noi1755菲波那契数列

    递归--练习6--noi1755菲波那契数列 一.心得 二.题目 1755:菲波那契数列 总时间限制:  1000ms 内存限制:  65536kB 描述 菲波那契数列是指这样的数列: 数列的第一个和 ...

  8. 这些HTML、CSS知识点,面试和平时开发都需要 No5-No7(知识点:文字设置、设置背景、数据列表)

    系列知识点汇总 这些HTML.CSS知识点,面试和平时开发都需要 No1-No4(知识点:HTML.CSS.盒子模型.内容布局) 这些HTML.CSS知识点,面试和平时开发都需要 No5-No7(知识 ...

  9. JavaScript学习总结(二十一)——使用JavaScript的数组实现数据结构中的队列与堆栈

    今天在项目中要使用JavaScript实现数据结构中的队列和堆栈,这里做一下总结. 一.队列和堆栈的简单介绍 1.1.队列的基本概念 队列:是一种支持先进先出(FIFO)的集合,即先被插入的数据,先被 ...

  10. 解决MySQL workbench的Can't connect to MySQL server on '127.0.0.1'(10061)问题

    如题,今天打开MySQL时,出现了这种问题,无法连接到数据库 问题原因:The error (2003) Can't connect to MySQL server on 'server' (1006 ...