русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Виды файлов


Дата добавления: 2013-12-23; просмотров: 1920; Нарушение авторских прав


Класс Описание

Основные понятия. Классы .NET для работы с файлами

Файл - именованная информация на внешнем носителе (на жестком или гибком магнитном диске). Логически файл можно представить как конечное количество последовательных байтов, поэтому такие устройства, как дисплей, клавиатура и принтер, также можно рассматривать как частные случаи файлов.

Передача данных с внешнего устройства в оперативную память называется чтением, или вводом, обратный процесс – записью, или выводом.

Чтение-запись в языке C# выполняется с помощью подсистемы ввода-вывода и классов библиотеки .NET. Рассмотрим обмен данными с файлами с помощью консоли, который реализуется с помощью потоков.

Поток (stream)– это любой перенос данных от источника к приемнику. Потоки обеспечивают работу как со стандартными, так и с определенными пользователем типами данных. Поток определяется как последовательность байтов и не зависит от конкретного устройства, с которым производиться обмен (оперативная память, файл на диске, клавиатура и принтер).

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

Для поддержки потоков библиотека .NET содержит иерархию классов, основная часть которой представлена на рисунке 11.1 Эти классы определены в пространстве имен System.IO.



 

Рисунок 11.1 – Основные классы пространства имен System.IO

Классы библиотеки позволяют работать в различных режимах с файлами, каталогами и областями оперативной памяти. Краткое описание классов приведено в таблице 11.1.


Таблица 11.1 -Основные классы пространства имен System.IO

BinaryReader, Чтение и запись значений простых встроенных типов

BinaryWriter (целочисленных, логических, строковых)

во внутренней форме представления

BufferedStream Временное хранение потока байтов (например, для последующего

переноса в постоянное хранилище)

Directory, Работа с каталогами или физическими файлами: создание,

DirectoryInfo, File, удаление, получение свойств. Возможности классов File и

FileInfo Directory реализованы в основном в виде статических методов.

Аналогичные классы DirectoryInfo и FileInfo используют обычные методы

FileStream Произвольный (прямой) доступ к файлу, представленному как

поток байтов

MemoryStream Произвольный доступ к потоку байтов в оперативной памяти

StreamWriter, Чтение из файла и запись в файл текстовой информации

StreamReader ( произвольный доступ не поддерживается )

StringReader, Работа с текстовой информацией в оперативной памяти

SrringReader

_________________________________________________________________________________

Информация, обрабатываемая фалами в С# может быть в виде:

  • двоичного представления данных(классы BinaryReader, BinaryWriter);
  • байтов (FileStream);
  • текста, то есть символов (StreamWriter, StreamReader).

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

Соответственно, различают текстовые, двоичные и байтовые файлы.

Доступ к файлам может быть последовательным, когда очередной элемент можно прочитать (записать) только после аналогичной операции с предыдущим элементом, и произвольным (прямым), при котором выполняется чтение (запись) произвольного элемента по заданному адресу.

Текстовые файлы позволяют выполнять только последовательный доступ, в двоичных и байтовых потоках можно использовать оба метода.

Методы форматированного ввода (ЧТЕНИЯ) значений арифметических типов, в С# не поддерживаются. Для преобразования из символьного в числовое представление используются методы класса Convert или метод Parse.

Форматированный вывод (ЗАПИСЬ) выполняется с помощью метода ToString, результаты выполнения которых передаются в методы текстовых файлов.



<== предыдущая лекция | следующая лекция ==>
Элемент Описание | 


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.007 сек.