在写程序时,不时会用到处理文件路径的问题,例如:取得扩展名、从路径中取出文件名、路径合并、取出或者去年扩展名等。这些功能都可以通过System.IO.Path类提供的方法来实现。这些相关功能用过多次了,但是由于没有系统的整理,掌握得不够牢固,每次用到时都需要再重新查一遍,或者重新测试一下。今天把我想到的常用功能统一测试了一下,并把测试结果写下来,供我自己以及需要类似功能的人参考。

以下代码是在VSTS中写的单元测试代码。


 [TestMethod]
public void testPath()
{
string fullPath= @"c:\dir1\dir1.2\abc.txt.exe";
string dir = @"c:\dir1\dir1.2";
string file = "abc.txt.exe";
string ext = ".exe";
string root = "c:\\";
string t;
t = Path.GetDirectoryName(fullPath);
Assert.AreEqual(dir, t);
Assert.IsTrue(!t.EndsWith("\\"));
t = Path.GetFileName(fullPath);
Assert.AreEqual(file, t);
t = Path.GetExtension(file);
Assert.AreEqual(ext, t);
t = Path.GetPathRoot(fullPath);
Assert.AreEqual(root, t);
}

Path类对路径字符串的操作的更多相关文章

  1. Python3基础 os.path.dirname 对路径字符串进行处理 返回所在文件夹的路径

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  2. Python3基础 os.path.basename 处理路径字符串,返回文件的名字

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  3. C# IO操作(一)Path类的常用方法

    1.Path类,查看编译器可知,这个类是个静态的工具类,需要注意的是,这个类是对字符串的操作,与文件无关. 1)ChangeExtension()方法,修改文件的后缀(调用这个方法,如果给第二个参数制 ...

  4. File IO(NIO.2):路径类 和 路径操作

    路径类 Java SE 7版本中引入的Path类是java.nio.file包的主要入口点之一.如果您的应用程序使用文件I / O,您将需要了解此类的强大功能. 版本注意:如果您有使用java.io. ...

  5. 文件夹和文件、Path类、流、序列化

    循环访问目录树 参考: http://msdn.microsoft.com/zh-cn/library/bb513869.aspx 循环访问目录树”的意思是在指定的根文件夹下,访问每个嵌套子目录中任意 ...

  6. Path类与Directory类与File类

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

  7. 04.Path类的学习

    path 是路径的意思. path类是一个静态类,所以path是一个工具类. Path类是专门用来操作路径的. Path的常用方法: namespace _15.Path类的学习 { class Pr ...

  8. 路径操作OS模块和Path类(全)一篇够用!

    路径操作 路径操作模块 os模块 os属性 os.name # windows是nt, linux是posix os.uname() # *nix支持 sys.platform #sys模块的属性, ...

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

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

随机推荐

  1. centos实现两种秒级任务的简单方法

    1.通过写shell脚本,死循环,守护进程运行 > vi /data/sec.sh #!/bin/bash while true do #写上自已的命令 echo "hello wor ...

  2. FTPserver

    客户端代码: import os import hashlib BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__) ...

  3. 获取URL某个参数

    /* 获取URL某个参数(可以是中文) * 返回:字符串 */ function getUrlParam(key) { // 获取参数 var url = window.location.search ...

  4. Jenkins发送邮件,邮件正文嵌套的html中文显示乱码

    解决方案: 1.添加系统变量.变量名:JAVA_TOOL_OPTIONS变量值:-Dfile.encoding=UTF8 2.打开jenkins,系统管理--系统设置,在全局属性处勾选Environm ...

  5. Gulp应用场景

    转自:Gulp教程之:Gulp能做什么,前端装逼为何要用它 我们先说说 平时web开发遇到的一些场景 和 苦恼无奈的情况:   JavaScript和CSS的版本问题 我们都知道 JavaScript ...

  6. PAT 1042 字符统计(20)(思路)

    1042 字符统计(20)(20 分) 请编写程序,找出一段给定文字中出现最频繁的那个英文字母. 输入格式: 输入在一行中给出一个长度不超过1000的字符串.字符串由ASCII码表中任意可见字符及空格 ...

  7. java有车有房有能力最基本运用

    public class yunsuan { public static void main(String[] args) { // 1是有,0是没有 int i = 1, l = 0;// 有房 i ...

  8. Startup.国外新锐公司及其技术Blog

    国外技术公司Tech/Engineering Blog 1. vimeo https://coderwall.com/team/vimeo http://blog.assembly.com/ 2. l ...

  9. 如何使用NSDL玩转微信跳一跳

    目前网上介绍windows和IOS操作系统上玩微信跳一跳的有很多文章,但介绍Linux平台下的文章相对较少,所以动手操作下和大家分享,同时感谢wangshub在github上的分享: 1 下载wech ...

  10. ES6 中 let and const

    let 和 const 命令 let 命令 基本用法 ES6 新增了let命令,用来声明变量.它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效. { let a = 10; v ...