`
mizoushenjing
  • 浏览: 54922 次
  • 性别: Icon_minigender_1
  • 来自: 聊城
社区版块
存档分类
最新评论

c#获得路径

阅读更多
//获取当前进程的完整路径,包含文件名(进程名)。
string str = this.GetType().Assembly.Location;
result: X:\xxx\xxx\xxx.exe (.exe文件所在的目录+.exe文件名)

//获取新的 Process 组件并将其与当前活动的进程关联的主模块的完整路径,包含文件名(进程名)。
string str = System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName;
result: X:\xxx\xxx\xxx.exe (.exe文件所在的目录+.exe文件名)

//获取和设置当前目录(即该进程从中启动的目录)的完全限定路径。
string str = System.Environment.CurrentDirectory;
result: X:\xxx\xxx (.exe文件所在的目录)

//获取当前 Thread 的当前应用程序域的基目录,它由程序集冲突解决程序用来探测程序集。
string str = System.AppDomain.CurrentDomain.BaseDirectory;
result: X:\xxx\xxx\ (.exe文件所在的目录+"\")

//获取和设置包含该应用程序的目录的名称。
string str = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase;
result: X:\xxx\xxx\ (.exe文件所在的目录+"\")

//获取启动了应用程序的可执行文件的路径,不包括可执行文件的名称。
string str = System.Windows.Forms.Application.StartupPath;
result: X:\xxx\xxx (.exe文件所在的目录)

//获取启动了应用程序的可执行文件的路径,包括可执行文件的名称。
string str = System.Windows.Forms.Application.ExecutablePath;
result: X:\xxx\xxx\xxx.exe (.exe文件所在的目录+.exe文件名)

//获取应用程序的当前工作目录(不可靠)。
string str = System.IO.Directory.GetCurrentDirectory();
result: X:\xxx\xxx (.exe文件所在的目录)


string str1 =Process.GetCurrentProcess().MainModule.FileName;//可获得当前执行的exe的文件名。 
string str2=Environment.CurrentDirectory;//获取和设置当前目录(即该进程从中启动的目录)的完全限定路径。
//备注 按照定义,如果该进程在本地或网络驱动器的根目录中启动,则此属性的值为驱动器名称后跟一个尾部反斜杠(如“C:\”)。如果该进程在子目录中启动,则此属性的值为不带尾部反斜杠的驱动器和子目录路径(如“C:\mySubDirectory”)。
string str3=Directory.GetCurrentDirectory();//获取应用程序的当前工作目录。
string str4=AppDomain.CurrentDomain.BaseDirectory;//获取基目录,它由程序集冲突解决程序用来探测程序集。
string str5=Application.StartupPath;//获取启动了应用程序的可执行文件的路径,不包括可执行文件的名称。
string str6=Application.ExecutablePath;//获取启动了应用程序的可执行文件的路径,包括可执行文件的名称。
string str7=AppDomain.CurrentDomain.SetupInformation.ApplicationBase;//获取或设置包含该应用程序的目录的名称。

1、判定一个给定的路径是否有效,合法
  通过Path.GetInvalidPathChars或Path.GetInvalidFileNameChars方法获得非法的路径/文件名字符,可以根据它来判断路径中是否包含非法字符;

2、如何确定一个路径字符串是表示目录还是文件
   使用Directory.Exists或File.Exist方法,如果前者为真,则路径表示目录;如果后者为真,则路径表示文件
上面的方法有个缺点就是不能处理那些不存在的文件或目录。这时可以考虑使用Path.GetFileName方法获得其包含的文件名,如果一个路径不为空,而文件名为空那么它表示目录,否则表示文件;
3、获得路径的某个特定部分
   Path.GetDirectoryName :返回指定路径字符串的目录信息。
   Path.GetExtension :返回指定的路径字符串的扩展名。
   Path.GetFileName :返回指定路径字符串的文件名和扩展名。
   Path.GetFileNameWithoutExtension :返回不具有扩展名的路径字符串的文件名。
   Path.GetPathRoot :获取指定路径的根目录信息。
4、准确地合并两个路径而不用去担心那个烦人的“\”字符
   使用Path.Combine方法,它会帮你处理烦人的“\”。
5、获得系统目录的路径
   Environment.SystemDirectory属性:获取系统目录的完全限定路径
   Environment.GetFolderPath方法:该方法接受的参数类型为Environment.SpecialFolder枚举,通过这个方法可以获得大量系统    文件夹的路径,如我的电脑,桌面,系统目录等
   Path.GetTempPath方法:返回当前系统的临时文件夹的路径
6、判断一个路径是绝对路径还是相对路径
   使用Path.IsPathRooted方法
7、读取或设置当前目录
   使用Directory类的GetCurrentDirectory和SetCurrentDirectory方法
8、使用相对路径
   设置当前目录后(见上个问题),就可以使用相对路径了。对于一个相对路径,我们可以使用Path.GetFullPath方法获得它的完    全限定路径(绝对路径)。
    注意:如果打算使用相对路径,建议你将工作目录设置为各个交互文件的共同起点,否则可能会引入一些不易发现的安全隐患,被恶意用户利用来访问系统文件。

9、文件夹浏览对话框(FolderBrowserDialog类)
  主要属性: Description:树视图控件上显示的说明文本,如上图中的“选择目录--练习”;RootFolder:获取或设置从其开始浏览的根文件夹,如上图中设置的我的电脑(默认为桌面);SelectedPath:获取或设置用户选定的路径,如果设置了该属性,打开对话框时会定位到指定路径,默认为根文件夹,关闭对话框时根据该属性获取用户用户选定的路径;         ShowNewFolderButton:获取或设置是否显示新建对话框按钮;
主要方法:  ShowDialog:打开该对话框,返回值为DialogResult类型值,如果为DialogResult.OK,则可以由SelectedPath属性获取用户选定的路径;
分享到:
评论

相关推荐

    最短路径算法c# 最短路径算法

    它通过填充一个距离矩阵,逐步考虑所有可能的中间节点,最终得到所有节点对之间的最短路径。时间复杂度为O(V^3)。 4. A*搜索算法:A*算法是一种启发式搜索算法,结合了Dijkstra算法的最优性和贪婪最佳优先搜索的...

    C#文件读写路径总结

    C#文件读写路径总结 本文档总结了C#文件读写路径相关的知识点,涵盖路径操作、文件和目录操作、读写文件、文件系统监视等方面。下面是详细的知识点总结: 一、路径相关操作 1. 判定路径是否有效/合法:使用 Path....

    C# 获取文件路径

    C# 获取文件路径是指在 C# 程序中获取当前执行文件的路径、当前工作目录的路径、基目录的路径等信息。在实际开发中,获取文件路径是非常重要的,例如在读取配置文件、加载资源文件、记录日志文件等场景中都需要获取...

    C#最短路径源码和demo

    该算法使用动态规划策略,通过迭代更新所有可能的路径,最终得到所有节点对的最短距离。在大型图中,如果需要计算所有路径,此算法可能更为合适。 3. **Bellman-Ford算法**:Bellman-Ford算法能处理含有负权边的...

    C#操作文件系统绝对路径和相对路径

    C#根据当前进程的启动路径,获得多个参数拼接的绝对路径。以及根据基准路径和参数获得相对路径。路径操作只用.NET中的System.IO和System.Text命名空间,相比其它的实现方式(比如采用System.Web命名空间)实用性更强...

    C# 得到系统的特殊路径

    在C#编程中,获取系统的特殊路径是常见的需求,这些路径通常用于存储用户配置、应用程序数据、临时文件等。在.NET Framework和.NET Core中,C#提供了若干类和方法来帮助开发者轻松地访问这些特定的系统路径。下面将...

    C#实现最短路径算法

    Floyd-Warshall算法通过逐步更新所有节点对之间的最短路径,最终得到完整的最短路径矩阵。C#实现时,可以创建一个二维数组来存储距离矩阵,并进行三层循环更新。 3. **Bellman-Ford算法**:与Dijkstra算法不同,...

    AE+C#最短路径程序

    【AE+C#最短路径程序】是一个结合了Adobe ...用户无需深入理解复杂的算法细节,只需在界面上操作,就能获得清晰的最短路径展示。这种跨领域的整合,展示了现代技术如何将艺术与科学完美融合,以解决日常生活中的问题。

    C# 获得文件路径信息

    在C#编程语言中,获取文件路径信息是日常开发中非常常见的操作。文件路径信息包含了文件在计算机系统中的完整定位,包括驱动器、目录结构以及文件名。在本篇文章中,我们将深入探讨如何使用C#来获取和处理文件路径。...

    C#路径文件目录IO常见操作汇总.

    ### C#路径文件目录IO常见操作汇总 #### 一、路径相关操作 **问题1:如何判定一个给定的路径是否有效/合法** - **解决方案**:为了验证路径的有效性,可以通过调用`Path.GetInvalidPathChars()`或`Path....

    C#获取相对路径方法

    有时候我们需要知道当前进程的主模块的完整路径,这可以通过`System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName`获得: ```csharp string mainModuleName = System.Diagnostics.Process....

    C# 用获取路径的方法得到圆形窗体

    本文将详细讲解如何利用C#获取路径的方法实现这一功能。首先,我们需要理解窗体的本质,窗体(Form)是Windows应用程序的基础,它提供了一个可视化的用户交互区域。 在Windows Forms应用程序中,我们通常使用`...

    AE+C# 最短路径

    根据给定的信息,本文将对“AE+C# 最短路径”这一主题进行深入解析,主要聚焦于如何在ArcEngine(AE)与C#相结合的情况下实现网络分析中的最短路径算法。 ### 标题:AE+C# 最短路径 标题表明了文章的核心内容是...

    C#获得当前程序的路径

    在C#编程中,了解如何获取当前运行程序的路径是一项基本但重要的技能,尤其是在处理文件操作、资源定位或调试信息时。以下是从标题、描述、标签以及部分内容中提炼出的关键知识点,涵盖了获取当前程序路径的各种方法...

    C#114获得文件路径信息 源代码

    这有助于确保你得到的是一个有效的、绝对的文件路径,无论原始路径是否包含环境变量。 2. **获取目录名**:`Path.GetDirectoryName(path)`返回路径中的目录部分。例如,如果你有一个路径`C:\Users\John\Documents\...

    C# 最短路径:Dijkstra算法

    这种方法保证了最终得到的路径是最优的,因为每次更新都确保了邻居节点通过当前节点到达源节点的距离不会增加。 在实际应用中,Dijkstra算法常被用于路由、网络流问题、地图导航等场景。通过理解和掌握这个算法,你...

    最短路径C#源码.zip

    它通过更新所有顶点对之间的最短路径,最终得到全局的最短路径矩阵。 2. **C#实现** C#是一种面向对象的编程语言,拥有丰富的库和强大的性能,非常适合开发算法。在实现最短路径算法时,我们可能需要定义表示图的...

    迷宫最短路径(C#)

    找到目标节点后,通过回溯路径,可以得到从起点到终点的最短路径。 11. **程序优化**: 为了提高效率,可以使用启发式搜索算法,如A*搜索,结合实际问题的特性(如曼哈顿距离或欧几里得距离)给出更精确的路径...

    求解无向图中任意两点之间的所有路径的C#实现

    求解无向图中任意两点之间的所有路径的C#实现 本文档只是根据网上搜到的资料,翻译成C#版本。当初为了项目需要,在网上找了很长时间,另外 自己也曾经废了老牛鼻子劲,也没有看懂网上的一些C++版本的算法实现。所以...

    C#文件夹路径获得参照.pdf

    在处理路径时,有时需要根据需求进行字符串操作,比如去除文件名得到目录路径,或者构建新的路径字符串。例如,你提到的`stmp = stmp.Substring(0, stmp.LastIndexOf('\\'));`这一行代码就是去掉最后一个反斜杠后的...

Global site tag (gtag.js) - Google Analytics