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
投稿

猜你喜欢

  • Android开发判断一个app应用是否在运行的方法详解

    2022-07-04 00:58:39
  • Java实现按比抽奖功能

    2023-11-11 13:12:30
  • Spring之@Aspect中通知的5种方式详解

    2021-12-12 20:28:02
  • 使用工具类-java精确到小数点后6位

    2021-06-24 20:45:39
  • 使用JMF实现java视频播放器

    2022-12-26 00:28:25
  • Java Web学习之Cookie和Session的深入理解

    2022-10-28 14:47:10
  • springboot FeignClient注解及参数

    2021-07-09 21:59:07
  • Java中的接口回调实例

    2023-11-29 08:05:43
  • Android实现简单的文件下载与上传

    2022-02-25 00:00:14
  • Java中char[]输出不是内存地址的原因详解

    2022-08-04 11:00:11
  • JDK动态代理,代理接口没有实现类,实现动态代理方式

    2021-12-21 11:55:22
  • SpringBoot整合Web开发之文件上传与@ControllerAdvice

    2021-09-29 04:43:55
  • android TextView设置中文字体加粗实现方法

    2023-08-06 02:32:03
  • Android自定义ViewGroup实现可滚动的横向布局(2)

    2022-10-08 17:25:27
  • SpringCloud Feign多参数传递及需要注意的问题

    2022-05-25 11:11:58
  • Service Activity的三种交互方式(详解)

    2022-03-16 20:55:08
  • Java过滤器doFilter里chain.doFilter()函数的理解

    2023-11-11 14:45:50
  • java实现通讯录管理系统

    2021-07-02 00:19:53
  • 1小时快速上手RabbitMQ(简介及安装过程)

    2022-04-26 15:49:40
  • C#中的多播委托和泛型委托

    2022-03-23 19:17:28
  • asp之家 软件编程 m.aspxhome.com