Wednesday, 21 August 2013

How to move the oldest 10 files in a directory to another directory in C#

How to move the oldest 10 files in a directory to another directory in C#

I have a C# script that is currently moving files between two directories.
It moves 10 files at a time. The problem is that it is grabbing the 10
files by file name. I want it to grab the oldest 10 files each time it
runs. How can I do that?
Currently, my script looks like this:
string[] dirsSourceDirectory =
System.IO.Directory.GetDirectories(sourceDirectory);
string[] filesSourceDirectory =
System.IO.Directory.GetFiles(sourceDirectory);
string[] dirsDestinationDirectory =
System.IO.Directory.GetDirectories(destinationDirectory);
string[] filesDestinationDirectory =
System.IO.Directory.GetFiles(destinationDirectory);
int filecount = Directory.GetFiles(destinationDirectory, "*.TRN",
SearchOption.TopDirectoryOnly).Length;
for (int i = 1; i <= 10; i++)
{
FileInfo[] rgfiles = di.GetFiles();
rgfiles[0].MoveTo(System.IO.Path.Combine(destinationDirectory,
rgfiles[0].Name));
}
Thanks!

No comments:

Post a Comment