Monday, 13 January 2020

C# - Directory.GetFiles() in Created Date/Time Order



Create 3 file (.txt) in C:\File directory in different time to have 3 textfile in different created datetime as below.


using System;
using System.Collections.Generic;
using System.Text;


using System.IO;
using System.Collections;

namespace Console
{
    public partial class clsCompareFileInfo : IComparer
    {
        public int Compare(object x, object y)
        {
            int CompareRet = default(int);
            FileInfo File1;
            FileInfo File2;

            File1 = (FileInfo)x;
            File2 = (FileInfo)y;

            CompareRet = DateTime.Compare(File1.LastWriteTime, 
                                          File2.LastWriteTime);
            return CompareRet;
        }
    }

    class Program
    {
        static void Main(string[] args)
        {
            DirectoryInfo dirinfo;
            FileInfo[] allFiles;

            dirinfo = new DirectoryInfo("C:\File");
            allFiles = dirinfo.GetFiles("*.txt");

            Array.Sort(allFiles, new clsCompareFileInfo());

            foreach (FileInfo fl in allFiles)
                System.Console.WriteLine(fl.FullName.ToString());

        }
    }
}


Output

DocumentThree.txt
DocumentOne.txt
DocumentTwo.txt

No comments:

Post a Comment