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

1、属性

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

2、方法

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

Combine               合并两个路径字符串。       

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

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

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

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

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

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

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

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

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

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

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

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

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

 
  1. string str = "images/girl.jpg";
  2. string extend = Path.GetExtension(str);
  3. Console.WriteLine(extend); //输出 .jpg
  4.  
  5. string str1 = @"C:\App_Data";
  6. string str2 = @"images\girl.jpg";
  7. string newPath = Path.Combine(str1, str2);
  8. Console.WriteLine(newPath); //输出C:\App_Data\images\girl.jpg //会自动补充反斜杠\
  9.  
  10. string str = @"C:\girl.jpg";
  11. string newPath = Path.ChangeExtension(str, "gif"); //更改扩展名,但不改变原值
  12. Console.WriteLine(str + " 更改扩展名之后: " + newPath); //newPath为:C:\girl.gif
  13.  
  14. string str = @"C:\App_data\upload\girl.jpg";
  15. string dictory = Path.GetDirectoryName(str);
  16. Console.WriteLine(dictory); //输出 C:\App_data\upload
  17.  
  18. string str = @"C:\App_data\upload\girl.jpg";
  19. string fileName = Path.GetFileName(str);
  20. Console.WriteLine(fileName); //输出 girl.jpg
  21.  
  22. string str = @"C:\App_data\upload\girl.jpg";
  23. string fileNameWithOutEntension = Path.GetFileNameWithoutExtension(str);
  24. Console.WriteLine(fileNameWithOutEntension); //输出 girl
  25.  
  26. string str = @"/upload/girl.jpg";
  27. string fullPath = Path.GetFullPath(str);
  28. Console.WriteLine(fullPath); //输出 C:\upload\girl.jpg 这个东西也可以转换成绝对物理路径
  29.  
  30. char[] chArr = Path.GetInvalidFileNameChars();
  31. foreach (char c in chArr)
  32. {
  33. Console.Write(c + " "); //输出很多不允许在文件名使用的字符
  34. }
  35.  
  36. char[] chArr = Path.GetInvalidPathChars();
  37. foreach (char c in chArr)
  38. {
  39. Console.Write(c + " "); //输出很多不允许在路径中使用的字符
  40. }
  41.  
  42. string str = @"C:\App_data\upload\girl.jpg";
  43. string rootInfo = Path.GetPathRoot(str);
  44. Console.Write(rootInfo); //输出 C:\
  45.  
  46. string str = Path.GetRandomFileName();
  47. Console.Write(str); //返回随机文件夹名或文件名
  48.  
  49. string str = Path.GetTempFileName(); //创建磁盘上唯一命名的零字节的临时文件并返回该文件的完整路径
  50. Console.Write(str); //输出 C:\Users\Administrator\AppData\Local\Temp\temdw85.tmp
  51.  
  52. string str = Path.GetTempPath();
  53. Console.Write(str); //输出 C:\Users\Administrator\AppData\Local\Temp\
  54.  
  55. string str = @"C:\App_data\upload\girl.jpg";
  56. bool hasExtension = Path.HasExtension(str); //确定路径是否含有扩展名,此处有.jpg返回true
  57. Console.Write(hasExtension);
  58.  
  59. string str = @"C:\App_data\upload\girl.jpg";
  60. bool isPath = Path.IsPathRooted(str); //判断给定的路径是绝对路径还是相对路径,此处返回true如果是App_data\upload\girl.jpg则返回false
  61. Console.Write(isPath);
  62.  
  63. 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. 20145315 《Java程序设计》第十周学习总结

    20145315 <Java程序设计>第十周学习总结 教材学习内容总结 网络概述 为了能够方便的识别网络上的每个设备,网络中的每个设备都会有一个唯一的数字标识,这个就是IP地址.IP地址实 ...

  2. [AHOI2008]上学路线

    题意:给定一个无向图,删除某些边有一定的代价,要求删掉使得最短路径减小,求最小代价. 首先要spfa求出起点到各个点的最短距离.对于一条权值为w,起点为i,终点为j的边,设dis[k]为起点到k点的距 ...

  3. Solidity 官方文档中文版 1_简介

    简介 Solidity是一种语法类似JavaScript的高级语言.它被设计成以编译的方式生成以太坊虚拟机代码.在后续内容中你将会发现,使用它很容易创建用于投票.众筹.封闭拍卖.多重签名钱包等等的合约 ...

  4. centos 升级python26到python27

    由于开发库依赖于python27,而自己安装的centos6.8自带的python是2.6.6,因此打算简单的做一下升级. 因为centos的yum依赖于python26因此不打算覆盖26.步骤如下: ...

  5. 重器--biomart

    biomart 重器 biomaRt工具包的作用在于它可以轻松地完成的在多个生物学数据库上繁琐地检索,获取相关数据在不同数据库间的关联.

  6. 七步精通Python机器学习--转载

    作者简介: Matthew Mayo    翻译:王鹏宇 开始.这是最容易令人丧失斗志的两个字.迈出第一步通常最艰难.当可以选择的方向太多时,就更让人两腿发软了. 从哪里开始? 本文旨在通过七个步骤, ...

  7. [java]String和Date、Timestamp之间的转换

    一.String与Date(java.util.Date)互转  1.1 String -> Date Date date = DateFormat.parse(String  str); St ...

  8. 不能用Xming连接到 Centos 7

    修改/etc/gdm/custom.conf 之后, Centos 6是没有问题的. 可是Centos 7 不行. 根据这个连接,运行firewall-config,把网络改到trusted级别, 能 ...

  9. git 使用和安装

    http://www.git-scm.com/download/ http://www.git-scm.com/download/win http://www.git-scm.com/download ...

  10. 本地Jdev Run PG报严重: Socket accept failed错误

    严重: Socket accept failed java.net.SocketException: select failed at java.net.PlainSocketImpl.socketA ...