на начало
На главную страницу
Форум   

Статья :: TextReader И TextWriter


TextReader И TextWriter

В абстрактных классах TextReader и TextWriter данные рассматриваются как последовательный поток символов (то есть, просто как текст). TextReader имеет следующие методы: Close (Закрыть). Peek (Считывание элемента данных), Read (Чтение), ReadBlock, ReadLine и ReadToEnd. TextWriter содержит методы типа Close (Закрыть), Flush (Дозапись), Write (Запись) и WriteLine. Перегруженные методы Read (Чтение) читают символы из потока. Перегруженные методы Write (Запись) и WriteLine записывают данные различных типов в поток. Если объект записывается в поток, то используется метод ToString объекта.
StringReader и StringWriter являются производными классами от классов TextReader и TextWriter соответственно. StringReader и StringWriter читают и записывают данные в символьную строку, которая сохраняется в базовом объекте StringBuilder. Конструктор StringWriter может принимать объект StringBuilder. Класс StringBuilder обсуждался в главе 3 "Программирование на управляемом C++".
StreamReader и StreamWriter также являются производными классами от классов TextReader и TextWriter. Они читают текст из объекта и записывают текст в объект Stream (Поток, Абстрактный последовательный файл). Так же как и в случае классов BinaryReader и BinaryWriter, можно создать объект Stream (Поток, Абстрактный последовательный файл) и передать его в конструктор StreamReader или StreamWriter. Следовательно, эти классы могут использовать любые унаследованные от Stream (Поток, Абстрактный последовательный файл) классы хранения данных. Пример Text (Текст) из папки File использует классы StreamReader и StreamWriter. Программу необходимо выполнить дважды: первый раз — чтобы создать файл, а затем второй раз — чтобы прочитать его.

FileStream *fs = new FileStream(
"TextTest.txt", FileMode::OpenOrCreate);
if (fs->Length == 0) // если Длина == О {
Console::WriteLine("Writing Data..."); // Запись данных
StreamWriter *sw = new StreamWriter(fs);
sw->Write(100); // Запись
sw->WriteLine(" One Hundred"); // Сто
sw->WriteLine("End of File"); // Конец Файла
sw->Close();
}
else
{
String *text; // Строка
StreamReader *sr = new StreamReader(fs) ;
text = sr->ReadLine(); // текст
while (text != 0)
// пока (текст!= О)
{
Console::WriteLine(text);
// текст
text = sr->ReadLine();
// текст
}
sr->Close ();
}
fs->Close ();


TextReader И TextWriter

страницы в данном разделе 
Глава 8. Классы каркаса .NET Framework Классы каркаса .NET Framework
Метаданные и отражение Класс туре (Тип)
Динамическое связывание Ввод и вывод в .NЕТ
Потоковые классы Примитивные типы данных и потоки
TextReader И TextWriter Обработка файлов
Сериализация, или преобразование в последовательную форму Объекты сериализации
ISerializable Модель приложений .NET
Поток Изоляция потоков
Синхронизация коллекций Контекст
Заместители и заглушки ContextBoundObject
Изоляция приложений Прикладная область
Прикладные области и сборки Класс AppDomain (Прикладная область)
События AppDomain (Прикладная область) Пример AppDomain (Прикладная область)
Маршализация, прикладные области и контексты Асинхронное программирование
Асинхронные шаблоны проектирования lAsyncResult
Использование делегатов в асинхронном программировании Организация поточной обработки с параметрами
Удаленный доступ Краткий обзор удаленного доступа
Удаленные объекты Активация
Пример удаленного объекта Пример программы, реализующей удаленный доступ
Метаданные и удаленный доступ Конфигурационные файлы удаленного доступа
Программируемые атрибуты Использование самостоятельно созданного атрибута
Определение класса атрибута Определение базового класса
Сборка мусора Уничтожение объектов
Неуправляемые ресурсы и освобождение ранее выделенной области памяти Поколения
Завершение и раскручивание стека Управление сборкой мусора с помощью класса сборщика мусора GC
Программа-пример Резюме


Содержание сайта (выборка)
Apache
Протоколы TCP/IP (принципы, протоколы и архитектура)



PHP, PELR, JSP
PHP
JavaServer Pages (JSP)

Базы данных
Основы mysql
СУБД INFORMIX
СУБД POSTGRES
Основы проектирования реляционных баз данных

HTML, javascript
Спецификация HTML 4.01
Каскадные Таблицы Стилей, Уровень 2
Клиентский JavaScript. Справочник.
JavaScript руководство пользователя
Серверный JavaScript 1.4. Руководство по Использованию.

Паскаль, C, C++, C#
GCC (примеры)
FAQ Валентинa Озеровa DELPHI
C



 
© faq.pp.ru, справочник программиста