Вход/Регистрация
C# для профессионалов. Том II
вернуться

Ватсон Карли

Шрифт:

Класс Path

Класс

Path
не является классом, экземпляры которого будут создаваться. Скорее он предоставляет некоторые статические методы, которые облегчают работу с путями доступа. Например, предположим, что необходимо вывести имя полного пути доступа для файла
ReadMe.txt
в папке
C:\My Documents
. Путь доступа к файлу можно найти с помощью следующей операции:

Console.WriteLine(Path.Combine(@"C:\My Documents", "ReadMe.txt"));

Использовать класс Path значительно проще, чем пытаться справиться с символами-разделителями вручную, потому что класс

Path
знает различные форматы имен путей доступа в различных операционных системах. Во время написания книги Windows являлась единственной операционной системой, поддерживаемой .NET, но если, например, .NET будет в дальнейшем перенесена на Unix, то
Path
сможет справиться с путями доступа Unix, где в качестве разделителя в именах путей доступа используется /, а не \.
Path.Combine
является методом этого класса, который будет вероятно использоваться чаще всего, но
Path
реализует также другие методы, которые предоставляют информацию о пути доступа или требуемом для него формате.

В следующем разделе будет дан пример, который поясняет, как просмотреть каталоги и увидеть свойства файлов

Пример: файловый браузер

В этом разделе представлен пример приложения C#, называемого

FileProperties
.
FileProperties
представляет простой интерфейс пользователя, который позволяет перемещаться по файловой системе и видеть время создания время последнего доступа, время последней записи и размер файлов.

Приложение

FileProperties
выглядит следующим образом. Пользователь вводит имя папки или файла в основное текстовое поле в верхней части окна и нажимает кнопку
Display
. Если вводится путь доступа к папке, ее содержимое выводится в окне списка. Если ввести путь доступа к файлу, то данные о нем появятся в текстовых полях в нижней части формы, а содержимое папки — в окне списка. На экране показано приложение
FileProperties
, используемое для просмотра папки:

Пользователь может очень легко перемещаться по файловой системе, щелкая мышью на любой из папок в правом окне списка для перехода в эту папку или на кнопке Up для перемещения в родительскую папку. На приведенном выше экране в основном текстовом поле введено C:\4990, чтобы получить содержимое этого раздела, который использует окно списка для дальнейшего перемещения. Пользователь может также выбрать файл, щелкая на его имени в окне списка, в этом случае его свойства выводятся в текстовых полях:

Обратите внимание, что при желании можно также вывести время создания, время последнего доступа и время последнего изменения для папок —

DirectoryInfo
реализует соответствующие свойства. Мы выводим эти свойства только для выбранного файла, чтобы сохранить простоту приложения.

Мы создаем проект как стандартное приложение C# Windows в Visual Studio.NET и добавляем различные текстовые поля и окно списка из области Windows Forms в панели инструментов. Затем элементы управления переименовываются в более понятные имена

txtBoxInput
,
txtBoxFolder
,
buttonDisplay
,
buttonUp
,
listBoxFiles
,
listBoxFolders
,
textBoxFileName
,
textBoxCreationTime
,
txtBoxLastAccessTime
,
txtBoxLasrWriteTime
и
textBoxFileSize
.

После чего добавляется следующий код:

using System;

using System.Drawing;

using System.Collections;

using System.ComponentModel;

using System.Windows.Forms;

using System.IO;

Нам необходимо делать это для всех примеров в этой главе, связанных с файловой системой, но мы не будем явно показывать этот код в остальных примерах. Затем к основной форме добавляется поле-член:

public class Form1 : System.Windows.Forms.Form {

#region Member Fields

 private string currentFolderPath;

currentFolderPath
будет содержать путь доступа папки, содержимое которой будет выводится в данный момент в окне списка.

Теперь нам нужно добавить обработку генерируемых пользователем событий. При этом возможны следующие способы вывода:

□ Пользователь щелкает на кнопке Display. В этом случае необходимо определить, что введенный пользователем текст в основном текстовом поле является путем доступа к файлу или папке. Если это папка, мы перечисляем файлы и вложенные папки этой папки в окне списка. Если это файл, мы делаем это для папки, содержащей этот файл, но также выводим свойства файла в нижних текстовых полях.

  • Читать дальше
  • 1
  • ...
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: