We help IT Professionals succeed at work.

get file attributes present in a folder c#

This partial code retrieves file names. I need help with the following remaining:

1. Date file created
2. Date file last modified
3. Number of rows in Sheet1

I appreciate the help.

        ExcelFiles xlFile = new ExcelFiles();

        // Put file names in the directory into array.
        string dirPath ="C:\\Users\\Mike\\Data\\"; 
        var files = Directory
                        .EnumerateFiles(dirPath, "*", SearchOption.TopDirectoryOnly)

        // store file names in xlFile object
        foreach (string name in files)
            string file =name;
            string fileExtention = name.Substring(name.Length - 5);
            if (fileExtention == ".xlsx")
                xlFile.filename = file;

                // add the following file attribute to xlFile object 
                //xlFile.recourdCount =  // number of rows in Sheet1
                //xlFile.createdOn =  // date file created
                //xlFile.lastModified =// date file last modified

Open in new window

Watch Question

Senior Software Engineer
Top Expert 2009
1 and 2 can be obtained from FileInfo as shown below:
FileInfo info = new FileInfo(name);
xlFile.createdOn = info.CreationTime;  //assusming that  xlFile.createdOn is DateTime type.  
xlFile.lastModified = info.LastWriteTime;  //assusming that  xlFile.createdOn is DateTime type.

Open in new window

For 3 you can use GetNumberOfRows (uses ODBC) as shown in Sid Holland answer:
xlFile.recourdCount = GetNumberOfRows(name, "Sheet1") ;

Open in new window

Note: I do not recommend using Excel Interop code, because it is not thread-safe.
Mike EghtebasDatabase and Application Developer


Thank you.