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

 更新时间:2023年01月24日 14:12:52   作者:Danny_hi  
这篇文章主要介绍了C# Path类---文件路径,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

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();
        } 

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • C#排序算法之快速排序

    C#排序算法之快速排序

    下面给出的代码是以数组最后一个元素作为参考元素,这仅是参考元素选取的方式之一。
    2010-09-09
  • C#以流方式读socket超时设置的实例

    C#以流方式读socket超时设置的实例

    这篇文章主要为大家详细介绍了C#以流方式读socket超时设置的实例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-03-03
  • 杂谈try-catch-finally异常处理

    杂谈try-catch-finally异常处理

    这篇文章主要介绍了杂谈try-catch-finally异常处理的相关资料,需要的朋友可以参考下
    2016-01-01
  • WPF实现雷达图(仿英雄联盟)的示例代码

    WPF实现雷达图(仿英雄联盟)的示例代码

    这篇文章主要介绍了如何利用WPF实现雷达图(仿英雄联盟)的绘制,文中的示例代码讲解详细,对我们学习或工作有一定帮助,需要的可以参考一下
    2022-07-07
  • C#前端验证和后台验证代码实例

    C#前端验证和后台验证代码实例

    这篇文章主要介绍了C#前端验证和后台验证代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • WinForm中实现picturebox自适应图片大小的方法

    WinForm中实现picturebox自适应图片大小的方法

    这篇文章主要介绍了WinForm中实现picturebox自适应图片大小的方法,涉及pictureBox控件相关属性设置技巧,需要的朋友可以参考下
    2017-05-05
  • C#中动态数组用法实例

    C#中动态数组用法实例

    这篇文章主要介绍了C#中动态数组用法,实例分析了C#中ArrayList实现动态数组的技巧,非常具有实用价值,需要的朋友可以参考下
    2015-04-04
  • c# 数据库的 sql 参数封装类的编写

    c# 数据库的 sql 参数封装类的编写

    c# 数据库的 sql 参数封装类的编写...
    2007-12-12
  • C# 模式匹配完全指南

    C# 模式匹配完全指南

    模式匹配是一种高端的使用机制,它允许程序员在开发的时候以对象的类型作为条件筛选和分情况处理的一种手段,本文给大家介绍C# 模式匹配完全指南,感兴趣的朋友跟随小编一起看看吧
    2022-03-03
  • C#操作XML文件步骤

    C#操作XML文件步骤

    在本篇文章里小编给大家分享了关于C#操作XML文件步骤教学内容,有兴趣的朋友们可以学习下。
    2019-01-01

最新评论