Как продвинуть сайт на первые места?
Вы создали или только планируете создать свой сайт, но не знаете, как продвигать? Продвижение сайта – это не просто процесс, а целый комплекс мероприятий, направленных на увеличение его посещаемости и повышение его позиций в поисковых системах.

Ускорение продвижения
Если вам трудно попасть на первые места в поиске самостоятельно, попробуйте технологию Буст, она ускоряет продвижение в десятки раз, а первые результаты появляются уже в течение первых 7 дней. Если ни один запрос у вас не продвинется в Топ10 за месяц, то в SeoHammer за бустер вернут деньги.



Иллюстрированный самоучитель по Visual Basic .NET

TextReader, TextWriter и производные классы. Объектные потоки: сохранение и восстановление объектов.

Двоичные потоки чтения/записи хорошо подходят для случаев, когда программисту точно известен порядок следования данных в двоичном формате, но прочитать полученный файл бывает непросто. Таким образом, для хранения обычного текста в файле лучше поискать другой вариант. В этой стандартной ситуации вместо пары BinaryReader/BinaryWriter следует использовать пару StreamReader/StreamWriter. По функциональным возможностям классы StreamReader и StreamWriter близки к традиционным средствам последовательного доступа к файлам из прежних версий VB (если не считать того, что в этих классах появилась поддержка Unicode). В классе StreamReader помимо метода Read также имеется удобный метод ReadToEnd, позволяющий прочитать весь файл за одну операцию.

Обратите внимание, что эти классы объявлены производными от абстрактных классов TextReader и TextWriter, а не от Stream. Эти абстрактные классы, объявленные с атрибутом Must Inherit, содержат общие средства чтения/записи текста. Их методы перечислены в табл. 9.11 и 9.12.

Таблица 9.11. Основные методы класса TextReader.

Метод Описание
Close Закрывает существующий поток TextReader и освобождает все системные ресурсы, связанные с ним
Peek Возвращает следующий символ в потоке без смещения указателя текущей позиции
Read Читает один символ из входного потока. Перегруженная версия читает в символьный массив определенное количество символов начиная с заданной позиции
ReadLine Читает символы до комбинации CR+LF и возвращает их в виде строкового значения. Если текущая позиция находится в конце файла, метод возвращает Nothing
ReadToEnd Читает все символы от текущей позиции до конца TextReader и возвращает их в виде одной строки (метод особенно удобен при работе с небольшими файлами)

Таблица 9.12. Основные методы класса TextWriter.

Метод Описание
Close Закрывает существующий поток TextWriter и освобождает все системные ресурсы, связанные с ним
Write Перегруженные версии метода позволяют записывать в поток любые базовые типы данных в текстовом формате
WriteLine Перегружается для записи в поток любых базовых типов данных в текстовом формате, за которыми записывается комбинация CR+LF

Примечание
Свойства Console.In и Console.Out используемые при консольном вводе-выводе, в действительности являются экземплярами классов TextReader и TextWriter. Методы Соnsole.Setln и Console.SetOut позволяют перенаправить стандартный ввод и вывод любым классам *Reader и *Writer соответственно
.

Поскольку классы TextReader и TextWriter являются абстрактными, программы работают с конкретными реализациями StreamReader и StreamWriter. Как и в случае с классами BinaryReader и BinaryWriter, при создании объектов StreamReader и StreamWriter конструктору обычно передается существующий объект потока:

myFile = New FileStreamtfileName.FileMode.Open, FileAccess.Read)
textFile= New StreamReader(myFile)

Для получения объекта также можно воспользоваться методами класса File. Пример неявного создания объекта StreamReader при создании файлового потока продемонстрирован ниже:

Dim aStreamReader As StreamReader
aStreamReader = File.OpenText ("sample.txt")

Объекты класса StreamWriter создаются аналогичным образом:

Dim aStreamWriter As StreamWriter
aStreamWriter = File.CreateText ("test.txt")
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.