What i am trying to do is get a lst of files in all directories from the specified directory root.
here is my code, but it only returns one directory and then doesnt print the files for the main directory.
private void getFilesInSubs()
{
MyOrionDS.FileInfo.Clear()
;
string path = textBox1.Text;
DirectoryInfo subdirs = new DirectoryInfo(path);
DirectoryInfo[] dirs = subdirs.GetDirectories("*"
);
foreach (DirectoryInfo directory in dirs)
{
System.IO.DirectoryInfo dInfo = new System.IO.DirectoryInfo(di
rectory.Fu
llName);
if (tbxFileType.Text.Length == 0)
{
pattern = "*.*";
}
else
{
pattern = "*." + tbxFileType.Text;
}
System.IO.FileInfo[] fInfo = dInfo.GetFiles(pattern);
foreach (System.IO.FileInfo fi in fInfo)
{
//string fileInfoStuff = "";
string fileName = fi.FullName;
//string fileversion = "";
DateTime creationTime = fi.CreationTime;
DateTime LastModifyDate = fi.LastWriteTime;
System.Diagnostics.FileVer
sionInfo myFileVersionInfo = System.Diagnostics.FileVer
sionInfo.G
etVersionI
nfo(fileNa
me);
//MessageBox.Show(myFileVe
rsionInfo.
ToString()
);
//fileInfoStuff = fi.Name + " | " + creationTime + " | " + myFileVersionInfo.FileVers
ion;
OrionDataSet.FileInfoRow newFileInfoRow = (OrionDataSet.FileInfoRow)
MyOrionDS.
FileInfo.N
ewFileInfo
Row();
newFileInfoRow.FileName = fi.FullName;
newFileInfoRow.LastModifyD
ate = LastModifyDate;
newFileInfoRow.CreateDate = creationTime;
newFileInfoRow.VersionNumb
er = myFileVersionInfo.FileVers
ion;
MyOrionDS.FileInfo.Rows.Ad
d(newFileI
nfoRow);
MyOrionDS.FileInfo.AcceptC
hanges();
//lbxPreview.Items.Add(fil
eInfoStuff
);
}
}
dataGridView1.DataSource = MyOrionDS.FileInfo;
}
Start Free Trial