ARTICLE

How to get directory of a file in C#

Posted by Mahesh Chand Articles | Files, Directory, IO July 14, 2012
How to get the directory name of a file in C# and .NET.
Reader Level:

Get Directory Name of a File

The DirectoryName property of the FileInfo class returns the name of the directory of a file. The following code snippet returns the directory of a file.

string directoryName = fi.DirectoryName;
Console.WriteLine("Directory Name: {0}", directoryName);

Sample

Here is a complete sample.

// Full file name 
string fileName = @"C:\Temp\MaheshTXFI.txt";
FileInfo fi = new FileInfo(fileName);

// Create a new file 
using (FileStream fs = fi.Create())
{
    Byte[] txt = new UTF8Encoding(true).GetBytes("New file.");
    fs.Write(txt, 0, txt.Length);
    Byte[] author = new UTF8Encoding(true).GetBytes("Author Mahesh Chand");
    fs.Write(author, 0, author.Length);
}

// Get File Name
string justFileName = fi.Name;
Console.WriteLine("File Name: {0}", justFileName);
// Get file name with full path 
string fullFileName = fi.FullName;
Console.WriteLine("File Name: {0}", fullFileName);
// Get file extension 
string extn = fi.Extension;
Console.WriteLine("File Extension: {0}", extn);
// Get directory name 
string directoryName = fi.DirectoryName;
Console.WriteLine("Directory Name: {0}", directoryName);
// File Exists ?
bool exists = fi.Exists;
Console.WriteLine("File Exists: {0}", exists);
if (fi.Exists)
{
    // Get file size
    long size = fi.Length;
    Console.WriteLine("File Size in Bytes: {0}", size);
    // File ReadOnly ?
    bool IsReadOnly = fi.IsReadOnly;
    Console.WriteLine("Is ReadOnly: {0}", IsReadOnly);
    // Creation, last access, and last write time 
    DateTime creationTime = fi.CreationTime;
    Console.WriteLine("Creation time: {0}", creationTime);
    DateTime accessTime = fi.LastAccessTime;
    Console.WriteLine("Last access time: {0}", accessTime);
    DateTime updatedTime = fi.LastWriteTime;
    Console.WriteLine("Last write time: {0}", updatedTime);
}     

Free Book

Download complete free book here: FileInfo in C#

Login to add your contents and source code to this article
comments
COMMENT USING
PREMIUM SPONSORS
Infragistics is experts in technology and design, and passionate about helping you build highly performant and stylish applications that solve problems, deliver inspiration, and maximize results.
HTML 5 + JQUERY CONTROLS
SPONSORED BY
Nevron Chart