GetCreationTime() private méthode

private GetCreationTime ( String path ) : DateTime
path String
Résultat DateTime
        /// <summary>
        /// Информация о файле.
        /// </summary>
        /// <returns>Дата создания, последнего изменения, последнего обращения к файлу, атрибуты файла, доступ к файлу.</returns>
        public string[] info()
        {
            if (SFile.Exists(fname) & fname.Length <= 260)//проверка на существование файла и корректность имени
            {
                try
                {
                    string[] s = new string[1];
                    s[0] += "\nДата создания файла: " + SFile.GetCreationTime(fname).ToString();                        //получение информации даты создания
                    s[0] += "\nДата последнего изменения файла: " + Convert.ToString(SFile.GetLastWriteTime(fname));    //получение информации даты последнего изменения
                    s[0] += "\nДата последнего обращения к файлу: " + Convert.ToString(SFile.GetLastAccessTime(fname)); //получение информации даты последнего обращения к файлу
                    s[0] += "\nАтрибуты файла: " + Convert.ToString(SFile.GetAttributes(fname));                        //получение информации атрибутов файла
                    s[0] += "\nДоступ к файлу: " + Convert.ToString(SFile.GetAccessControl(fname));                     //получение информации доступа к файлу
                    return(s);
                }

                catch (Exception e)                                    //обработка исключений для получения информации
                {
                    LogForOperations("Информация о файле", e.Message); //запись в лог ошибки (если есть)
                    throw e;
                }
            }
            else
            {
                LogForOperations("Получение информации о файле", "файл не существует либо содержит в своем имени более 260 символов");//запись ошибки в лог, если не выполняется условие проверки
                return(null);
            }
        }
Exemple #2
0
        public IActionResult Delete()
        {
            var upload   = Path.Combine(_env.WebRootPath, _uploadDir);
            var listFile = Directory.GetFiles(upload);

            if (listFile.Length != 0 && Directory.Exists(upload))
            {
                foreach (var item in listFile)
                {
                    if ((DateTime.Now.Subtract(FileIO.GetCreationTime(item)).TotalDays > 1 ? true : false))
                    {
                        FileIO.Delete(item);
                    }
                }
            }
            return(Json(new OkResult()));
        }
Exemple #3
0
 public static System.DateTime GetCreationTime(string path) =>
 MSIOF.GetCreationTime(path);
Exemple #4
0
 public string GetCreatedDate(string format = "M-d-yy")
 {
     return(SystemFile.GetCreationTime(this.path).ToString(format));
 }
Exemple #5
0
 public static DateTime GetCreationTime(string path)
 {
     return(File.GetCreationTime(path));
 }
Exemple #6
0
 public override DateTime GetCreationTime(string path)
 {
     return(File.GetCreationTime(path));
 }
Exemple #7
0
        void IterateAndModifyFilesData(DefaultWatcherData data, string directory, bool dispatch, string[] files)
        {
            /* Set all as untested */
            foreach (string filename in data.Files.Keys)
            {
                FileData fd = (FileData)data.Files [filename];
                if (fd.Directory == directory)
                {
                    fd.NotExists = true;
                }
            }

            /* New files */
            foreach (string filename in files)
            {
                FileData fd = (FileData)data.Files [filename];
                if (fd == null)
                {
                    try {
                        data.Files.Add(filename, CreateFileData(directory, filename));
                    } catch {
                        // The file might have been removed in the meanwhile
                        data.Files.Remove(filename);
                        continue;
                    }

                    if (dispatch)
                    {
                        DispatchEvents(data.FSW, FileAction.Added, filename);
                    }
                }
                else if (fd.Directory == directory)
                {
                    fd.NotExists = false;
                }
            }

            if (!dispatch)             // We only initialize the file list
            {
                return;
            }

            /* Removed files */
            List <string> removed = null;

            foreach (string filename in data.Files.Keys)
            {
                FileData fd = (FileData)data.Files [filename];
                if (fd.NotExists)
                {
                    if (removed == null)
                    {
                        removed = new List <string> ();
                    }

                    removed.Add(filename);
                    DispatchEvents(data.FSW, FileAction.Removed, filename);
                }
            }

            if (removed != null)
            {
                foreach (string filename in removed)
                {
                    data.Files.Remove(filename);
                }

                removed = null;
            }

            /* Changed files */
            foreach (string filename in data.Files.Keys)
            {
                FileData fd = (FileData)data.Files [filename];
                DateTime creation, write;
                try {
                    creation = File.GetCreationTime(filename);
                    write    = File.GetLastWriteTime(filename);
                } catch {
                    /* Deleted */
                    if (removed == null)
                    {
                        removed = new List <string> ();
                    }

                    removed.Add(filename);
                    DispatchEvents(data.FSW, FileAction.Removed, filename);
                    continue;
                }

                if (creation != fd.CreationTime || write != fd.LastWriteTime)
                {
                    fd.CreationTime  = creation;
                    fd.LastWriteTime = write;
                    DispatchEvents(data.FSW, FileAction.Modified, filename);
                }
            }

            if (removed != null)
            {
                foreach (string filename in removed)
                {
                    data.Files.Remove(filename);
                }
            }
        }
Exemple #8
0
        private void DoFiles(DefaultWatcherData data, string directory, bool dispatch)
        {
            bool flag = Directory.Exists(directory);

            if (flag && data.IncludeSubdirs)
            {
                string[] directories = Directory.GetDirectories(directory);
                foreach (string directory2 in directories)
                {
                    DoFiles(data, directory2, dispatch);
                }
            }
            string[] array = null;
            array = ((!flag) ? NoStringsArray : ((!data.NoWildcards) ? Directory.GetFileSystemEntries(directory, data.FileMask) : ((!File.Exists(data.FileMask) && !Directory.Exists(data.FileMask)) ? NoStringsArray : new string[1]
            {
                data.FileMask
            })));
            foreach (string key4 in data.Files.Keys)
            {
                FileData fileData = (FileData)data.Files[key4];
                if (fileData.Directory == directory)
                {
                    fileData.NotExists = true;
                }
            }
            string[] array2 = array;
            foreach (string text in array2)
            {
                FileData fileData2 = (FileData)data.Files[text];
                if (fileData2 == null)
                {
                    try
                    {
                        data.Files.Add(text, CreateFileData(directory, text));
                    }
                    catch
                    {
                        data.Files.Remove(text);
                        continue;
                        IL_0185 :;
                    }
                    if (dispatch)
                    {
                        DispatchEvents(data.FSW, FileAction.Added, text);
                    }
                }
                else if (fileData2.Directory == directory)
                {
                    fileData2.NotExists = false;
                }
            }
            if (dispatch)
            {
                ArrayList arrayList = null;
                foreach (string key5 in data.Files.Keys)
                {
                    FileData fileData3 = (FileData)data.Files[key5];
                    if (fileData3.NotExists)
                    {
                        if (arrayList == null)
                        {
                            arrayList = new ArrayList();
                        }
                        arrayList.Add(key5);
                        DispatchEvents(data.FSW, FileAction.Removed, key5);
                    }
                }
                if (arrayList != null)
                {
                    foreach (string item in arrayList)
                    {
                        data.Files.Remove(item);
                    }
                    arrayList = null;
                }
                foreach (string key6 in data.Files.Keys)
                {
                    FileData fileData4 = (FileData)data.Files[key6];
                    DateTime creationTime;
                    DateTime lastWriteTime;
                    try
                    {
                        creationTime  = File.GetCreationTime(key6);
                        lastWriteTime = File.GetLastWriteTime(key6);
                    }
                    catch
                    {
                        if (arrayList == null)
                        {
                            arrayList = new ArrayList();
                        }
                        arrayList.Add(key6);
                        DispatchEvents(data.FSW, FileAction.Removed, key6);
                        continue;
                        IL_0340 :;
                    }
                    if (creationTime != fileData4.CreationTime || lastWriteTime != fileData4.LastWriteTime)
                    {
                        fileData4.CreationTime  = creationTime;
                        fileData4.LastWriteTime = lastWriteTime;
                        DispatchEvents(data.FSW, FileAction.Modified, key6);
                    }
                }
                if (arrayList != null)
                {
                    foreach (string item2 in arrayList)
                    {
                        data.Files.Remove(item2);
                    }
                }
            }
        }
Exemple #9
0
        void DoFiles(DefaultWatcherData data, string directory, bool dispatch)
        {
            bool direxists = Directory.Exists(directory);

            if (direxists && data.IncludeSubdirs)
            {
                foreach (string d in Directory.GetDirectories(directory))
                {
                    DoFiles(data, d, dispatch);
                }
            }

            string [] files = null;
            if (!direxists)
            {
                files = NoStringsArray;
            }
            else if (!data.NoWildcards)
            {
                files = Directory.GetFileSystemEntries(directory, data.FileMask);
            }
            else
            {
                // The pattern does not have wildcards
                if (File.Exists(data.FileMask) || Directory.Exists(data.FileMask))
                {
                    files = new string [] { data.FileMask }
                }
                ;
                else
                {
                    files = NoStringsArray;
                }
            }

            /* Set all as untested */
            foreach (string filename in data.Files.Keys)
            {
                FileData fd = (FileData)data.Files [filename];
                if (fd.Directory == directory)
                {
                    fd.NotExists = true;
                }
            }

            /* New files */
            foreach (string filename in files)
            {
                FileData fd = (FileData)data.Files [filename];
                if (fd == null)
                {
                    try {
                        data.Files.Add(filename, CreateFileData(directory, filename));
                    } catch {
                        // The file might have been removed in the meanwhile
                        data.Files.Remove(filename);
                        continue;
                    }

                    if (dispatch)
                    {
                        DispatchEvents(data.FSW, FileAction.Added, filename);
                    }
                }
                else if (fd.Directory == directory)
                {
                    fd.NotExists = false;
                }
            }

            if (!dispatch)             // We only initialize the file list
            {
                return;
            }

            /* Removed files */
            ArrayList removed = null;

            foreach (string filename in data.Files.Keys)
            {
                FileData fd = (FileData)data.Files [filename];
                if (fd.NotExists)
                {
                    if (removed == null)
                    {
                        removed = new ArrayList();
                    }

                    removed.Add(filename);
                    DispatchEvents(data.FSW, FileAction.Removed, filename);
                }
            }

            if (removed != null)
            {
                foreach (string filename in removed)
                {
                    data.Files.Remove(filename);
                }

                removed = null;
            }

            /* Changed files */
            foreach (string filename in data.Files.Keys)
            {
                FileData fd = (FileData)data.Files [filename];
                DateTime creation, write;
                try {
                    creation = File.GetCreationTime(filename);
                    write    = File.GetLastWriteTime(filename);
                } catch {
                    /* Deleted */
                    if (removed == null)
                    {
                        removed = new ArrayList();
                    }

                    removed.Add(filename);
                    DispatchEvents(data.FSW, FileAction.Removed, filename);
                    continue;
                }

                if (creation != fd.CreationTime || write != fd.LastWriteTime)
                {
                    fd.CreationTime  = creation;
                    fd.LastWriteTime = write;
                    DispatchEvents(data.FSW, FileAction.Modified, filename);
                }
            }

            if (removed != null)
            {
                foreach (string filename in removed)
                {
                    data.Files.Remove(filename);
                }
            }
        }