Объект «ТекстовыйДокумент»
Объект ТекстовыйДокумент предназначен для манипулирования строками текстового файла. Все строки в системе хранятся в кодировке UNICODE, но есть возможность записи и чтения текстов в других кодировках. С помощью методов Прочитать и Записать текстовый документ считывается из файла или записывается в файл.
При работе с текстовым документом можно манипулировать его строками, для чего предназначены следующие методы:
ДобавитьСтроку
Добавляет строку в конец текстового документа.
ЗаменитьСтроку
Заменяет строку с указанным номером на переданную.
ВставитьСтроку
Вставляет в текстовый документ строку с указанным номером.
Удалить Строку
Удаляет из текстового документа строку с указанным номером.
КоличествоСтрок
Получает количество строк в тексте.
ПолучитьСтроку
Получает строку текстового документа по номеру.
Следующий пример демонстрирует применение этих методов:
Текст = Новый ТекстовыйДокумент;
Текст.Прочитать("catalog.txt", КодировкаТекста.МЖ!);
Текст.ЗаменитьСтроку(52, "Установка оборудования " + Стоимость);
Текст.ВставитьСтроку(53, "Замена оборудования... ");
Текст.ДобавитьСтроку("Конец файла");
Для н = 1 По Текст.КоличествоСтрок() Цикл
стр = Текст.ПолучитьСтроку(н);
Текст.Записать("catalog2.txt",КодировкаТекста.ANSI);
Текст.ТолькоПросмотр = Истина;
Можно прочитать весь текстовый документ в строковую переменную или, наоборот, в текстовый документ записать значение строковой переменной. Для этого предназначены методы ПолучитьТекст и УстановитьТекст. Текст, содержащийся в текстовом документе до исполнения метода УстановитьТекст, удаляется:
стр = ТекстДок.ПолучитьТекст();
ТекстДок.УстановитьТекст(стр);
Метод Очистить позволяет полностью очистить текстовый документ (удалить все строки). С помощью метода Показать текстовый документ можно отобразить на экране. Если установить свойство ТолькоПросмотр в значение Истина, то пользователь не сможет изменить текстовый документ.
Последовательный доступ к тексту
При работе с большими текстовыми файлами бывает необходимо применить последовательный доступ, при котором весь файл не загружается в память и в один момент времени производится обработка только фрагмента файла. После чтения/записи очередного фрагмента к нему нельзя уже вернуться (в памяти его больше нет), поэтому такой доступ называется последовательным.
Текст обычно хранится в кодировке UNICODE, но объекты ЧтениеТекста и ЗаписьТекста умеют работать и с другими кодировками.
Объект «ЗаписьТекста»
Объект ЗаписьТекста предназначен для последовательной записи текстовых файлов. Приведенный ниже фрагмент запишет небольшой текстовый файл:
ЗаписьТекста("с:\test.txt".КодировкаТекста.ANSI.Символы.ПС);
Файл.Записать("Строка1");
Файл.ЗаписатьСтроку("Строка2");
Файл.Записать("Строка3");
В результате работы программы получится следующий текстовый файл:
Строка1Строка2
Строка3
Объект «ЧтениеТекста»
Объект ЧтениеТекста предназначен для последовательного чтения текстовых файлов. Следующий фрагмент прочитает ранее записанный файл:
ЧтениеТекста("с:\test.txt",КодировкаТекста.ANSI,Символы.ПС);
Строка1 = Файл.Прочитать(7);
Строка2 = Файл.ПрочитатьСтроку();
Строка3 = Файл.Прочитать();