How to: Create a Directory Listing

[This documentation is for preview only, and is subject to change in later releases. Blank topics are included as placeholders.]

The following code example shows how to use the I/O classes to create a listing of all files with the extension ".exe" in a directory.

using System;
using System.IO;

public class DirectoryLister
    public static void Main(String[] args)
        string path = Environment.CurrentDirectory;
        if (args.Length > 0)
            if (Directory.Exists(args[0]))
                path = args[0];
                Console.WriteLine("{0} not found; using current directory:",
        DirectoryInfo dir = new DirectoryInfo(path);
        foreach (FileInfo f in dir.GetFiles("*.exe"))
            string name = f.Name;
            long size = f.Length;
            DateTime creationTime = f.CreationTime;
            Console.WriteLine("{0,-12:N0} {1,-20:g} {2}", size,
                creationTime, name);


In this example, the DirectoryInfo is the current directory, denoted by ("."), and the code lists all files in the current directory having a .exe extension, along with their file size, creation time, and name. Assuming that there were .exe files in the \Bin subdirectory of C:\MyDir, the output of this code might look like this:

953          7/20/2000 10:42 AM   C:\MyDir\Bin\paramatt.exe
664          7/27/2000 3:11 PM    C:\MyDir\Bin\tst.exe
403          8/8/2000 10:25 AM    C:\MyDir\Bin\dirlist.exe

If you want a list of files in another directory, such as your C:\ root directory, pass the argument "C:\" into the executable generated by compiling this code, for example: "testApplication.exe C:\".

Note Note

Visual Basic users may choose to use the methods and properties provided by the FileSystem class for file I/O.