Exemple #1
0
        public void DirInfo(ZEILog log, string dirname = @"G:\3 семестр\ООТПиСП лабораторные")
        {
            log.WriteAction("Вызван метод DirInfo класса ZEIDirInfo");
            DirectoryInfo dirInfo = new DirectoryInfo(dirname);

            Console.WriteLine($"Время создания каталога: {dirInfo.CreationTime}, количество файлов: {dirInfo.GetFiles().Length}, " +
                              $"количество поддиректориев: {dirInfo.GetDirectories().Length}, родительский директорий: {dirInfo.Parent}");
            log.WriteAction($"Время создания каталога: {dirInfo.CreationTime}, количество файлов: {dirInfo.GetFiles().Length}, " +
                            $"количество поддиректориев: {dirInfo.GetDirectories().Length}, родительский директорий: {dirInfo.Parent}");
        }
Exemple #2
0
        public void DiskInfo(ZEILog log)
        {
            log.WriteAction("Вызван метод DiskInfo класса ZEIDiskInfo");
            var allDrives = DriveInfo.GetDrives();

            foreach (var d in allDrives)
            {
                Console.WriteLine("Диск: {0}, метка тома: {5}, свободное место: {1}, объем {2}, доступный объем: {3}, файловая система: {4}",
                                  d.Name, d.AvailableFreeSpace, d.TotalSize, d.TotalFreeSpace, d.DriveFormat, d.VolumeLabel);
                log.WriteAction($"Диск: {d.Name}  метка тома: {d.VolumeLabel}, свободное место: {d.AvailableFreeSpace}, объем { d.TotalSize}, доступный объем: {d.TotalFreeSpace}, файловая система: {d.DriveFormat}");
            }
        }
Exemple #3
0
        static void Main(string[] args)
        {
            ZEILog      Log = new ZEILog();
            ZEIDiskInfo d1  = new ZEIDiskInfo();

            try
            {
                d1.DiskInfo(Log);
            }
            catch (System.IO.IOException e)
            {
                Console.WriteLine("Ошибка! " + e.Message);
            }


            ZEIFileInfo file = new ZEIFileInfo();

            try
            {
                file.FileInfo(Log);
            }
            catch (Exception e)
            {
                Console.WriteLine("Ошибка! " + e.Message);
            }


            ZEIDirInfo dir = new ZEIDirInfo();

            dir.DirInfo(Log);

            try
            {
                ZEIFileManager.FileManager(Log, @"G:\3 семестр\ООТПиСП лабораторные\Лабораторная работа 13");
                ZEIFileManager.CreateZIP(Log, @"G:\3 семестр\ООТПиСП лабораторные\Лабораторная работа 13\ZEIInspect", @"G:\3 семестр\ООТПиСП лабораторные\Лабораторная работа 13\ZEIFROMZIP");
            }
            catch (Exception e)
            {
                Console.WriteLine("Ошибка! " + e.Message);
            }

            Log.ReadFromLog();
            Log.FindInLog("ZEIFiles");
            Log.FindInLog("6.08.2020");
            Console.WriteLine("Количество записей в логе: " + Log.CountLog());
            //Log.DeleteInfo();
        }
Exemple #4
0
        public static void CreateZIP(ZEILog log, string dir1, string dir2)
        {
            //Сделайте архив из файлов директория XXXFiles.
            log.WriteAction("Вызван метод CreateZIP класса ZEIFileManager");
            string zipName = @"G:\3 семестр\ООТПиСП лабораторные\Лабораторная работа 13\ZEIFiles.zip";

            if (new DirectoryInfo("..//..//..//..//..//Лабораторная работа 13").GetFiles("*.zip").Length == 0)
            {
                ZipFile.CreateFromDirectory(dir1, zipName);
            }
            //Разархивируйте его в другой директорий
            DirectoryInfo ddir2 = new DirectoryInfo(dir2);

            if (!ddir2.Exists)
            {
                ZipFile.ExtractToDirectory(zipName, dir2);
            }
        }
Exemple #5
0
        public void FileInfo(ZEILog log, string filepath = "..//..//..//ZEI.cs")
        {
            log.WriteAction("Вызван метод FileInfo класса ZEIFileInfo");
            FileInfo fileInfo = new FileInfo(filepath);

            if (fileInfo.Exists)
            {
                Console.WriteLine($"Полный путь к файлу: {fileInfo.FullName}, \n" +
                                  $"размер: {fileInfo.Length} байт, расширение: {fileInfo.Extension}, имя: {fileInfo.Name}, время создания: {fileInfo.CreationTime}, " +
                                  $"последнее изменение: {fileInfo.LastWriteTime}");
                log.WriteAction($"Полный путь к файлу: {fileInfo.FullName}, \n" +
                                $"размер: {fileInfo.Length} байт, расширение: {fileInfo.Extension}, имя: {fileInfo.Name}, время создания: {fileInfo.CreationTime}, " +
                                $"последнее изменение: {fileInfo.LastWriteTime}");
            }
            else
            {
                throw new Exception("Файла не существует");
            }
        }
Exemple #6
0
        public static void FileManager(ZEILog log, string path)
        {
            //Прочитать список файлов и папок заданного диска.
            log.WriteAction("Вызван метод ListOfFilesAndDirs класса ZEIFileManager");
            DirectoryInfo dir = new DirectoryInfo(path);

            Console.WriteLine("\nСписок папок заданного диска: ");
            log.WriteAction("\n\tСписок папок заданного диска: ");

            foreach (var item in dir.GetDirectories())
            {
                Console.WriteLine(item.Name);
                log.WriteAction(item.Name);
            }
            Console.WriteLine("Список файлов заданного диска: ");
            log.WriteAction("\n\tСписок файлов заданного диска: ");

            foreach (var item in dir.GetFiles())
            {
                Console.WriteLine(item.Name);
                log.WriteAction(item.Name);
            }
            //Создать директорий ZEIInspect
            log.WriteAction("Создания директория ZEIInspect");
            DirectoryInfo directory = new DirectoryInfo(@"G:\3 семестр\ООТПиСП лабораторные\Лабораторная работа 13");

            directory.CreateSubdirectory("ZEIInspect");
            if (!directory.Exists)
            {
                directory.Create();
            }

            //создать текстовый файл xxxdirinfo.txt и сохранить туда информацию.
            log.WriteAction("Создания текстового файла ZEIdirinfo.txt");
            FileInfo file = new FileInfo("..//..//..//..//ZEIdirinfo.txt");

            using (StreamWriter fs = new StreamWriter(file.FullName))
            {
                fs.Write("Информация");
            }
            // Создать копию файла и переименовать его. Удалить первоначальный файл
            File.Copy("..//..//..//..//ZEIdirinfo.txt", "..//..//..//..//ZEIdirinfoCOPY.txt", true); //перезаписывание, избежать исключения существующего файла
            file.Delete();

            //Создать директорий ZEIFiles. Скопировать в него все файлы с заданным расширением из заданного пользователем директория.
            log.WriteAction("Создания директория ZEIFiles с файлами txt");
            DirectoryInfo directory2 = new DirectoryInfo(@"G:\3 семестр\ООТПиСП лабораторные\Лабораторная работа 13");

            directory.CreateSubdirectory("ZEIFiles");
            if (!directory.Exists)
            {
                directory.Create();
            }
            var filetxt = Directory.GetFiles(@"G:\3 семестр\ООТПиСП лабораторные\Лабораторная работа 13", "*.txt");

            foreach (string f in filetxt)
            {
                string fName = Path.GetFileName(f);
                File.Copy(f, Path.Combine(@"G:\3 семестр\ООТПиСП лабораторные\Лабораторная работа 13\ZEIFiles", fName), true); // перезаписать
            }
            //переместить ZEIFiles в ZEIInspect
            log.WriteAction("Перемещение ZEIFiles в ZEIInspect");
            string sourcedirectorypath = @"G:\3 семестр\ООТПиСП лабораторные\Лабораторная работа 13\ZEIFiles";
            string destdirectorypath   = @"G:\3 семестр\ООТПиСП лабораторные\Лабораторная работа 13\ZEIInspect\ZEIFiles";

            if (sourcedirectorypath == destdirectorypath)
            {
                throw new Exception("Пути совпадают");
            }
            DirectoryInfo destdirectory = new DirectoryInfo(destdirectorypath);

            if (!destdirectory.Exists)
            {
                Directory.Move(sourcedirectorypath, destdirectorypath);
            }
        }