C# Path类---文件路径解读

作者:Danny_hi 时间:2022-05-20 05:58:47 

C# Path类—文件路径

给定如下字符串类型filePath,表示一个文件路径:

string filePath = "D:\\Program\\Test\\Config.txt";

下面是Path类中的一些常用方法及执行的结果:

Path.GetFullPath(filePath);   //执行结果为==>"D:\\Program\\Test\\Config.txt";

Path.GetDirectoryName(filePath); //执行结果为==>D:\\Program\\Test

Path.GetFileName(filePath);  //执行结果为==>Config.txt

Path.GetFileNameWithoutExtension(filePath); //执行结果为==>Config

Path.GetExtension(filePath); //执行结果为==>.txt

Path.GetPathRoot(filePath); //执行结果为==>D:\

获取当前的程序目录:

AppDomain.CurrentDomain.BaseDirectory;    //执行结果==>"D:\\Program\\Test\\Bin\\Debug\\"
Application.StartupPath;    //执行结果==>"D:\\Program\\Test\\Bin\\Debug"

Environment.CurrentDirectory;//获取和设置当前目录(该进程从中启动的目录)的完全限定目录
Process.GetCurrentProcess().MainModule.FileName;//可获得当前执行的exe的文件名

C# 文件路径 Path类 测试

腾出点时间对Path类做一个系统的测试

    private void PathTest()
        {
            //------------必须的空间-------using System.Diagnostics;     using System.IO;
            string path = @"C:\Users\cks\Desktop\zzg\ERPWork1125\User.lua";
            Debug.Print(Path.ChangeExtension(path, "txt"));                     // 输出:-----C:\Users\cks\Desktop\zzg\ERPWork1125\User.txt
            string path1 = @"C:\Users\cks\Desktop\zzg";
            string path2 = @"gg/e.txt";
            Debug.Print(Path.Combine(path1, path2));                            //输出:-----C:\Users\cks\Desktop\zzg\gg/e.txt
            Debug.Print(Path.GetDirectoryName(path));                           //输出:-----C:\Users\cks\Desktop\zzg\ERPWork1125
            Debug.Print(Path.GetExtension(path));                               //输出:-----.lua
            Debug.Print(Path.GetFileName(path));                                //输出:-----User.lua
            Debug.Print(Path.GetFileNameWithoutExtension(path));                //输出:-----User
            Debug.Print(Path.GetFullPath(path));                                // 输出:-----C:\Users\cks\Desktop\zzg\ERPWork1125\User.lua
            Debug.Print(String.Join("/x/", Path.GetInvalidFileNameChars()));    //输出:-----"/x/</x/>/x/|/x/
            Debug.Print(String.Join("/a/", Path.GetInvalidPathChars()));        //输出:----- " /a/</a/>/a/|/a/
            Debug.Print(Path.GetPathRoot(path));                                //输出:-----C:\
            Debug.Print(Path.GetRandomFileName());                              //输出:-----0am13z3o.gzd
            Debug.Print(Path.GetTempFileName());                                //输出:-----C:\Users\cks\AppData\Local\Temp\tmp81E5.tmp
            Debug.Print(Path.HasExtension(path).ToString());                    //输出:-----True
            Debug.Print(Path.IsPathRooted(path).ToString());                    //输出:-----True
            Debug.Print(Path.AltDirectorySeparatorChar.ToString());             //输出:-----/
            Debug.Print(Path.DirectorySeparatorChar.ToString());                //  输出:-----\
            Debug.Print(String.Join("/x/", Path.InvalidPathChars));             //输出:-----"/x/</x/>/x/|/x/
            Debug.Print(Path.PathSeparator.ToString());                         //输出:-----;
            Debug.Print(Path.VolumeSeparatorChar.ToString());                   //输出:-----:  
            // LuaDLL.getc(stdin);
            //test t = new test();
        } 

来源:https://blog.csdn.net/qq_43024228/article/details/120931210

标签:C#,Path类,文件路径
0
投稿

猜你喜欢

  • Java设计模式之命令模式

    2022-06-17 22:49:07
  • Java(基于Struts2) 分页实现代码

    2023-11-04 05:58:58
  • 浅谈Java如何实现一个基于LRU时间复杂度为O(1)的缓存

    2022-02-02 08:35:36
  • 基于SpringBoot+Redis的Session共享与单点登录详解

    2023-09-22 18:13:48
  • Java开发完整短信验证码功能的全过程

    2023-05-05 15:35:24
  • JavaFx Tooltip悬浮提示使用及自定义代码详解

    2023-05-11 15:06:05
  • java绘制五子棋棋盘

    2022-05-10 09:37:36
  • MyBatis中map的应用与模糊查询实现代码

    2021-09-02 18:27:14
  • JAVA复制数组和重置数组大小操作

    2021-08-29 02:02:41
  • C#中把任意类型的泛型集合转换成SQLXML数据格式的实例

    2022-12-24 08:16:21
  • springboot整合nacos,如何读取nacos配置文件

    2022-12-30 19:55:25
  • SpringBoot打jar包遇到的xml文件丢失的解决方案

    2023-04-11 23:39:06
  • Java内存模型之happens-before概念详解

    2023-11-23 03:11:50
  • Java 数据结构与算法系列精讲之哈希算法实现

    2022-01-10 23:56:07
  • Jenkins安装以及邮件配置详解

    2023-04-20 12:42:39
  • Java中的 stop the world是什么呢

    2022-09-11 21:32:42
  • SpringBoot整合MongoDB的步骤详解

    2023-10-11 17:20:32
  • 详解Java豆瓣电影爬虫——小爬虫成长记(附源码)

    2023-10-29 17:45:17
  • idea 有时提示找不到类或者符号的解决

    2023-11-29 04:10:43
  • 解析spring事务管理@Transactional为什么要添加rollbackFor=Exception.class

    2021-09-03 17:07:41
  • asp之家 软件编程 m.aspxhome.com