C#文件路径的最佳实践方法

一、获取当前文件夹路径

在C#中,获取当前执行文件的路径的方法有很多种,其中最简便的方法就是使用AppDomain.CurrentDomain.BaseDirectory属性。

string currentDirectoryPath = AppDomain.CurrentDomain.BaseDirectory;
Console.WriteLine(currentDirectoryPath);

此方法会返回当前执行文件的路径,该路径不包含文件名。

而如果需要获取文件名,可以采用以下方法:

string assemblyFolderPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetName().CodeBase);
string assemblyFilePath = Path.Combine(assemblyFolderPath, Assembly.GetExecutingAssembly().GetName().Name + ".exe");
Console.WriteLine(assemblyFilePath);

该方法将返回当前执行文件的路径,包含文件名。

二、获取上级文件夹路径

获取上级文件夹路径的方法同样有很多种,以下是其中的一种方法:

string parentFolderPath = Directory.GetParent(currentDirectoryPath).ToString();
Console.WriteLine(parentFolderPath);

此方法将返回当前文件夹的上级文件夹路径,即在当前文件夹路径后去掉最右侧的文件夹名称。

三、获取特定路径下的文件

如果需要在特定路径下查找某个文件或者遍历该路径下的所有文件,可以采用以下方法:

string folderPath = @"C:\Temp";
string[] filePaths = Directory.GetFiles(folderPath);
foreach (string filePath in filePaths)
{
    Console.WriteLine(filePath);
}

该方法可以找出特定路径下所有的文件路径,并在控制台输出各自的路径。

四、处理文件路径字符串

在进行任何文件操作时,经常需要处理路径字符串,以下是一些常用的方法:

1. 取得文件名(包含扩展名)

string filePath = @"C:\Temp\example.docx";
string fileName = Path.GetFileName(filePath);
Console.WriteLine(fileName);

该方法会输出example.docx

2. 取得文件名(不包含扩展名)

string fileNameWithoutExtension = Path.GetFileNameWithoutExtension(filePath);
Console.WriteLine(fileNameWithoutExtension);

该方法会输出example

3. 取得文件扩展名

string fileExtension = Path.GetExtension(filePath);
Console.WriteLine(fileExtension);

该方法会输出.docx

五、使用Path.Combine()方法

为了防止手动拼接文件路径字符串出现错误,可以使用Path.Combine()方法拼接路径。

string folder = @"C:\Temp";
string file = "example.docx";
string filePath = Path.Combine(folder, file);
Console.WriteLine(filePath);

该方法将会输出C:\Temp\example.docx

六、使用环境变量获取文件路径

有时候需要获取一些系统相关的文件路径,比如%TEMP%环境变量中存储的临时文件夹路径,可以采用以下方法获取环境变量并获取对应的文件路径:

string tempFolderPath = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData);
Console.WriteLine(tempFolderPath);

该方法将返回当前用户的本地应用数据文件夹路径。

七、获取特定文件夹下的所有子文件夹

有时候需要获取一个文件夹下的所有子文件夹,可以使用以下方法:

string folderPath = @"C:\Temp";
string[] subDirectories = Directory.GetDirectories(folderPath, "*", SearchOption.AllDirectories);
foreach (string subDirectory in subDirectories)
{
    Console.WriteLine(subDirectory);
}

该方法可以递归地获取C:\Temp文件夹下的所有子文件夹,并在控制台输出各自的路径。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/249263.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-12 13:32
下一篇 2024-12-12 13:32

相关推荐

  • 如何查看Anaconda中Python路径

    对Anaconda中Python路径即conda环境的查看进行详细的阐述。 一、使用命令行查看 1、在Windows系统中,可以使用命令提示符(cmd)或者Anaconda Pro…

    编程 2025-04-29
  • 解决.net 6.0运行闪退的方法

    如果你正在使用.net 6.0开发应用程序,可能会遇到程序闪退的情况。这篇文章将从多个方面为你解决这个问题。 一、代码问题 代码问题是导致.net 6.0程序闪退的主要原因之一。首…

    编程 2025-04-29
  • ArcGIS更改标注位置为中心的方法

    本篇文章将从多个方面详细阐述如何在ArcGIS中更改标注位置为中心。让我们一步步来看。 一、禁止标注智能调整 在ArcMap中设置标注智能调整可以自动将标注位置调整到最佳显示位置。…

    编程 2025-04-29
  • vue下载无后缀名的文件被加上后缀.txt,有后缀名的文件下载正常问题的解决

    本文旨在解决vue下载无后缀名的文件被加上后缀.txt,有后缀名的文件下载正常的问题,提供完整的代码示例供参考。 一、分析问题 首先,需了解vue中下载文件的情况。一般情况下,我们…

    编程 2025-04-29
  • 如何在Java中拼接OBJ格式的文件并生成完整的图像

    OBJ格式是一种用于表示3D对象的标准格式,通常由一组顶点、面和纹理映射坐标组成。在本文中,我们将讨论如何将多个OBJ文件拼接在一起,生成一个完整的3D模型。 一、读取OBJ文件 …

    编程 2025-04-29
  • Python中init方法的作用及使用方法

    Python中的init方法是一个类的构造函数,在创建对象时被调用。在本篇文章中,我们将从多个方面详细讨论init方法的作用,使用方法以及注意点。 一、定义init方法 在Pyth…

    编程 2025-04-29
  • Python创建分配内存的方法

    在python中,我们常常需要创建并分配内存来存储数据。不同的类型和数据结构可能需要不同的方法来分配内存。本文将从多个方面介绍Python创建分配内存的方法,包括列表、元组、字典、…

    编程 2025-04-29
  • 用不同的方法求素数

    素数是指只能被1和自身整除的正整数,如2、3、5、7、11、13等。素数在密码学、计算机科学、数学、物理等领域都有着广泛的应用。本文将介绍几种常见的求素数的方法,包括暴力枚举法、埃…

    编程 2025-04-29
  • 为什么用cmd运行Java时需要在文件内打开cmd为中心

    在Java开发中,我们经常会使用cmd在命令行窗口运行程序。然而,有时候我们会发现,在运行Java程序时,需要在文件内打开cmd为中心,这让很多开发者感到疑惑,那么,为什么会出现这…

    编程 2025-04-29
  • Python中读入csv文件数据的方法用法介绍

    csv是一种常见的数据格式,通常用于存储小型数据集。Python作为一种广泛流行的编程语言,内置了许多操作csv文件的库。本文将从多个方面详细介绍Python读入csv文件的方法。…

    编程 2025-04-29

发表回复

登录后才能评论