Day 10 of 30-Day .NET Challenge: File Paths
Sukhpinder Singh
.Net Technical Lead @ SourceFuse | .Net Modernization | Master's Degree in Software Systems
Introduction
The article demonstrates the built-in functions while working with file system paths. It makers easier to handle file paths.
Learning Objectives
Prerequisites for Developers
Getting Started
How to determine current directory?
The System.IO contains a method to expose full path of current directory. To begin, create a static class file called “FilePath.cs” within the console application. Insert the provided code snippet into this file.
public static class FilePath
{
/// <summary>
/// Outputs
/// D:\Workspace\30DayChallenge.Net\30DayChallenge.Net\bin\Debug\net8.0
/// </summary>
public static void DisplayCurrentDirectory()
{
Console.WriteLine(Directory.GetCurrentDirectory());
}
}
Execute the code from the main method as follows
#region Day 10 - File Path
FilePath.DisplayCurrentDirectory();
#endregion
Console Output
D:\Workspace\30DayChallenge.Net\30DayChallenge.Net\bin\Debug\net8.0
How to work with special directories?
The code below provides the path to the Windows My Documents folder equivalent or the user’s HOME directory, regardless of the operating system, including Linux. To do that add another method into the same static class as shown below
/// <summary>
/// Outputs
/// C:\Users\admin\Documents
/// </summary>
public static void DisplaySpecialDirectory()
{
Console.WriteLine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments));
}
Execute the code from the main method as follows
#region Day 10 - File Path
FilePath.DisplaySpecialDirectory();
#endregion
Console Output
C:\Users\admin\Documents
领英推荐
How to get OS path characters?
Various operating systems utilize distinct characters for separating directory levels. The framework automatically interprets the separator character relevant to the operating system being used.
To do that add another method into the same static class as shown below
/// <summary>
/// Outputs
/// For windows: \sample
/// </summary>
public static void DisplayOSPathCharacters()
{
Console.WriteLine($"For windows: {Path.DirectorySeparatorChar}sample");
}
Execute the code from the main method as follows
#region Day 10 - File Path
FilePath.DisplayOSPathCharacters();
#endregion
Console Output
For windows: \sample
How to get filename extensions?
The Path class also exposes a method to get extension of any filename passed as a parameter. To do that add another method into the same static class as shown below
/// <summary>
/// Outputs
/// .json
/// </summary>
public static void DisplayFileExtension()
{
Console.WriteLine(Path.GetExtension("sample.json"));
}
Execute the code from the main method as follows
#region Day 10 - File Path
FilePath.DisplayFileExtension();
#endregion
Console Output
.json
Complete Code on?GitHub
C# Programming??
Thank you for being a part of the C# community! Before you leave:
If you’ve made it this far, please show your appreciation with a clap and follow the author!?????
Follow us: X | LinkedIn | Dev.to | Hashnode | Newsletter | Tumblr Visit our other platforms: GitHub | Instagram | Tiktok | Quora | Daily.dev More content at C# Programming