示例#1
0
 private static DateTime GetDateTime( string path, DateTimeAttrib attrib, bool utc )
 {
     PathInternal.DllImport.WIN32_FILE_ATTRIBUTE_DATA fileData = new PathInternal.DllImport.WIN32_FILE_ATTRIBUTE_DATA();
     if ( PathInternal.DllImport.GetFileAttributesExW( PathInternal.ConvertToUnicodePath( path ), 0, ref fileData ) )
     {
         switch ( attrib )
         {
             case DateTimeAttrib.Write:
                 return PathInternal.FILETIMEToDateTime( fileData.ftLastWriteTime, utc );
             case DateTimeAttrib.Access:
                 return PathInternal.FILETIMEToDateTime( fileData.ftLastAccessTime, utc );
             case DateTimeAttrib.Creation:
                 return PathInternal.FILETIMEToDateTime( fileData.ftCreationTime, utc );
             default:
                 throw new Exception( "Unknown DateTimeAttrib in File.GetDateTime() function" );
         }
     }
     else
         throw new IO.FileNotFoundException( path );
 }