Категории
Самые читаемые
ChitatKnigi.com » 🟢Компьютеры и Интернет » Базы данных » Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю

Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю

Читать онлайн Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю
1 ... 359 360 361 362 363 364 365 366 367 ... 642
Перейти на страницу:

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать

  Console.WriteLine("Here are your drives:");

  foreach (string s in drives)

  {

    Console.WriteLine("--> {0} ", s);

  }

<b>  // Удалить ранее созданные подкаталоги.</b>

  Console.WriteLine(&quot;Press Enter to delete directories&quot;);

  Console.ReadLine();

  try

  {

    Directory.Delete(&quot;MyFolder&quot;);

<b>    // Второй параметр указывает, нужно ли удалять внутренние подкаталоги.</b>

    Directory.Delete(&quot;MyFolder2&quot;, true);

  }

  catch (IOException e)

  {

    Console.WriteLine(e.Message);

  }

}

Работа с типом DriveInfo

Пространство имен System.IO содержит класс по имени DriveInfo. Подобно Directory.GetLogicalDrives() статический метод DriveInfo.GetDrives() позволяет выяснить имена устройств на машине. Однако в отличие от Directory.GetLogicalDrives() метод DriveInfo.GetDrives() предоставляет множество дополнительных деталей (например, тип устройства, доступное свободное пространство и метка тома). Взгляните на следующие операторы верхнего уровня в  новом проекте консольного приложения DriveInfоАрр:

using System;

using System.IO;

<b>// Получить информацию обо всех устройствах.</b>

DriveInfo[] myDrives = DriveInfo.GetDrives();

<b>// Вывести сведения об устройствах.</b>

foreach(DriveInfo d in myDrives)

{

  Console.WriteLine(&quot;Name: {0}&quot;, d.Name);       // имя

  Console.WriteLine(&quot;Type: {0}&quot;, d.DriveType);  // тип

<b>  // Проверить, смонтировано ли устройство.</b>

  if(d.IsReady)

  {

    Console.WriteLine(&quot;Free space: {0}&quot;, d.TotalFreeSpace);

                    // свободное пространство

    Console.WriteLine(&quot;Format: {0}&quot;, d.DriveFormat);  // формат устройства

    Console.WriteLine(&quot;Label: {0}&quot;, d.VolumeLabel);   // метка тома

  }

  Console.WriteLine();

}

Console.ReadLine();

(window.adrunTag = window.adrunTag || []).push({v: 1, el: 'adrun-4-390', c: 4, b: 390})

Вот возможный вывод:

***** Fun with DriveInfo *****

Name: C:

Type: Fixed

Free space: 284131119104

Format: NTFS

Label: OS

Name: M:

Type: Network

Free space: 4711871942656

Format: NTFS

Label: DigitalMedia

К этому моменту вы изучили несколько основных линий поведения классов Directory, DirectoryInfо и DriveInfo. Далее вы ознакомитесь с тем, как создавать, открывать, закрывать и удалять файлы, находящиеся в заданном каталоге.

Работа с типом FileInfo

Как было показано в предыдущем примере DirectoryApp, класс FileInfo позволяет получать сведения о существующих файлах на жестком диске (такие как время создания, размер и атрибуты) и помогает создавать, копировать, перемещать и удалять файлы. В дополнение к набору функциональности, унаследованной от FileSystemInfo, класс FileInfo имеет ряд уникальных членов,которые описаны в табл. 20.4.

Обратите внимание, что большинство методов класса FileInfo возвращают специфический объект ввода-вывода (например, FileStream и StreamWriter), который позволяет начать чтение и запись данных в ассоциированный файл во множестве форматов. Вскоре мы исследуем указанные типы, но прежде чем рассмотреть работающий пример, давайте изучим различные способы получения дескриптора файла с использованием класса FileInfo.

Метод FileInfo.Create()

Следующий набор примеров находится в проекте консольного приложения по имени SimpleFileIO. Один из способов создания дескриптора файла предусматривает применение метода FileInfo.Create():

using System;

using System.IO;

Console.WriteLine(&quot;***** Simple IO with the File Type *****n&quot;);

// Измените это на папку на своей машине, к которой вы имеете доступ

// по чтению/записи или запускайте приложение от имени администратора.

var fileName = $@&quot;C{Path.VolumeSeparatorChar}

                   {Path.DirectorySeparatorChar}temp

                   {Path.DirectorySeparatorChar}Test.dat&quot;;

1 ... 359 360 361 362 363 364 365 366 367 ... 642
Перейти на страницу:
Отывы о книге
Открыть боковую панель
Комментарии
Ксения
Ксения 25.01.2025 - 12:30
Неплохая подборка книг. Прочитаю все однозначно.
Jonna
Jonna 02.01.2025 - 01:03
Страстно🔥 очень страстно
Ксения
Ксения 20.12.2024 - 00:16
Через чур правильный герой. Поэтому и остался один
Настя
Настя 08.12.2024 - 03:18
Прочла с удовольствием. Необычный сюжет с замечательной концовкой
Марина
Марина 08.12.2024 - 02:13
Не могу понять, где продолжение... Очень интересная история, хочется прочесть далее