C#程序从绝对路径获取文件名
介绍
让我们尝试了解C#程序从绝对路径获取文件名。我们将看到 File 类下的 GetFileName 方法的用法,该方法用于获取文件名,另一个方法 GetFileNameWithoutExtension 将返回指定路径字符串的文件名,不带扩展名。要从两个绝对路径获取相对路径,我们将使用 C# 中的 Uri 类。 Uri 类提供了多种处理 URI 的方法,包括我们将在代码中使用的 MakeRelativeUri。
文件是在C#中用于存储一些信息的位置。文件的集合被称为目录。在C#中,文件属于System.IO命名空间,该命名空间还包括其他用于对文件执行操作的类。路径是同一命名空间下的另一个类。有两种类型的路径,绝对路径和相对路径。绝对路径包括定位系统上的文件或目录所需的所有信息。绝对路径的示例是C: Program Files Google Chrome filename.exe。
相对路径告诉我们文件相对于用户正在工作的当前目录的路径。考虑上面提到的类似示例,如果主要可执行文件位于C: Program Files中,则filename.exe的相对路径为Google Chrome filename.exe。
GetFileName方法
这是C#中文件类下的方法,用于从绝对路径获取文件名。 path.GetFileName 用于执行该操作。它采用绝对路径作为输入,并返回指定路径的文件名和扩展名。用作输入的绝对路径采用字符串形式。
语法
public static string GetFileName(string path)
这里的路径是我们需要从中获取文件名的字符串。
在上面的示例中,GetFileName 是路径类的方法。此方法将返回路径名中最后一个目录字符分隔符之后的字符。如果不存在,那么它将返回 NULL 值。如果路径的最后一个字符是目录或卷分隔符,那么它也会返回 NULL 值。
同样,如果路径为null,那么它将返回NULL值。
如果文件名是“C:mydirfilename.exe”,那么输出结果是 filename.exe算法
下面的算法将给出使用 File.GetFileName() 方法获取文件名的分步过程。
例如,如果我们需要找到文件的名称,我们可以使用以下算法来理解:
第一步 − 创建一个字符串,用于存储文件路径的名称,记住这是一个绝对路径。
第2步 − 创建一个最初为空的字符串文件名。
第 3 步 −我们将把 GetFileName 方法的输出存储在字符串文件名中。
第四步 − 由于上面代码中文件名为“myfile”,因此输出也将是相同的。
第 5 步 − 如果在任何情况下路径为 null,则返回的输出也将为 NULL。
第6步 − 通过使用GetFileName方法,我们可以从绝对路径返回文件的名称。
示例
using System; using System.IO; using System.Text; class FileName { static void Main(string[] args) { //declaring the string path. string path = "E://Jinku Hu//Starting Over//Csharp//myfile.md"; //declaring the string filename. string filename = null; //we will be storing the value in the filename variable. filename = Path.GetFileName(path); Console.WriteLine(filename); Console.ReadLine(); } }
输出
myfile.md
时间复杂度
在上面提到的代码中,我们可以观察到主函数内部没有循环或嵌套循环,因此时间复杂度简单地为O(1)。
GetFileNameWithoutExtension 方法
之前解释的方法是使用GetFileName方法返回文件的名称。现在我们将了解如何返回没有扩展名的文件名。假设路径的名称是“C:Program FilesGoogle Chromefilename.exe”,那么返回的输出是“filename”。它接受绝对路径作为输入,并将文件名作为输出返回。输入的绝对路径是一个字符串形式的。语法- “public static string GetFileName(string path)”,这里的path是我们要获取没有扩展名的文件名的字符串。
在上面的示例中,GetFileName 是路径类的方法。此方法将返回路径名中最后一个目录字符分隔符之后的字符,不带扩展名。如果不存在,那么它将返回 NULL 值。如果路径的最后一个字符是目录或卷分隔符,那么它也会返回 NULL 值。
算法
在此算法中,我们将了解使用 GetFileNameWithoutExtension 方法返回不带扩展名的文件名的分步方法。
第 1 步 − 创建一个字符串来存储绝对路径的名称。
步骤2 − 创建另一个名为filename的字符串,该字符串将作为输出返回。
第三步 − 字符串变量filename将以null作为其初始值。
第四步 − 使用GetFileNameWithoutExtension方法生成的输出将存储在一个字符串filename中。
步骤 5 − 如果文件为空,则输出也将相同。
第 6 步 − 因此我们可以使用 GetFileNameWithoutExtension 方法返回不带扩展名的文件名。
示例
using System; using System.IO; using System.Text; class FileName { static void Main(string[] args) { //declare the string path first. string path = "C:\Program Files\Google Chrome\filename.exe"; //declare the string filename and store null initially. string filename = null; filename = Path.GetFileNameWithoutExtension(path); //store the answer in the variable filename. Console.WriteLine(filename); Console.ReadLine(); } }
输出
filename.exe
时间复杂度
在上述代码中,我们可以观察到只使用了一种直接生成输出并将其存储在相应变量中的方法。没有使用任何循环或任何类型的复杂递归函数。这仅仅构成了时间复杂度为O(1)。
结论
在本文中,我们广泛讨论了使用GetFileName方法从绝对路径中获取带有扩展名的文件名,以及使用GetFileNameWithoutExtension方法获取不带扩展名的文件名的C#程序。
我们希望本文能够帮助您增强有关 C# 的知识。
以上是C#程序从绝对路径获取文件名的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

本文探讨了C中的无指针启用的挑战。它认为问题本身不是零,而是滥用。 本文详细介绍了预防退出的最佳实践,包括提出前检查,指针pitiberi

本文解释了如何使用printf中的\ n逃脱序列在C中创建新线字符并列出函数。 它详细介绍了功能并提供了代码示例,以说明其用于输出中的线路断裂。

本文指导初学者选择C编译器。 它认为,海湾合作委员会由于其易用性,广泛的可用性和广泛的资源,最适合初学者。 但是,它也比较了海湾室,Clang,MSVC和TCC,突出了它们的差异

本文强调了NULL在现代C编程中的持续重要性。 尽管取得了进步,但NULL对于明确的指针管理仍然至关重要,从而通过标记没有有效的内存地址来防止细分故障。 最好的prac

本文回顾了初学者的在线C编译器,重点是易用性和调试功能。 在线GDB和REPL。 其他选项,例如Programiz和Compil

本文讨论了C IDE中的有效代码复制。 它强调,复制是IDE功能,而不是编译器功能,并且详细提高了效率的策略,包括使用IDE选择工具,代码折叠,搜索/替换,Templa

本文比较在线C编程平台,突出了诸如调试工具,IDE功能,标准合规性和内存/执行限制等功能的差异。 它认为“最佳”平台取决于用户需求

本文在C程序编译中对缺少输出窗口进行故障排除。 它研究了诸如无法运行可执行文件,程序错误,错误编译器设置,背景过程和快速程序终止之类的原因。解决方案涉及ch
