Тип: Строка. Разделитель строк по-умолчанию. Это свойство влияет на поведение метода ПрочитатьСтроку.
Полное описание, параметры и ограничения
ЧтениеДанных.РазделительСтрок (DataReader.LineSplitter)
ЧтениеДанных (DataReader)
РазделительСтрок (LineSplitter)
Доступен, начиная с версии 8.3.9.
Использование:
Чтение и запись.
Описание:
Тип: Строка.
Разделитель строк по-умолчанию. Это свойство влияет на поведение метода ПрочитатьСтроку.
Доступность:
Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение (клиент), мобильное приложение (сервер), мобильный автономный сервер.
См. также:
ЧтениеДанных, метод ПрочитатьСтроку
Использование в версии:
Доступен, начиная с версии 8.3.9.
Методическая информация
Практические примеры
Асинхронно записать две строки и прочитать строку и остаток
ЗаписьСимволов не добавляет границу, ЗаписьСтроки добавляет ПС. После чтения первой строки отдельным вызовом забираем оставшиеся символы.
Где и как запускать
Модуль пустой управляемой формы учебной внешней обработки; тонкий или толстый клиент Windows. Вставьте весь модуль. Это не серверный код.
Подготовка
Создайте учебную внешнюю обработку с пустой управляемой основной формой. Создайте команду УчебныйПример и кнопку этой команды.
В свойстве команды Действие выберите процедуру УчебныйПример. Вставьте полный приведённый модуль формы.
Откройте EPF в тонком или толстом клиенте Windows и нажмите кнопку. Не переносите Ждать и Асинх в серверный общий модуль.
Пример работает только со своими данными в памяти; записи в базу, файлы и сеть нет.
&НаКлиенте
Асинх Процедура УчебныйПример(Команда)
Поток = Новый ПотокВПамяти;
Запись = Новый ЗаписьДанных(Поток, КодировкаТекста.UTF8, , Символы.ПС);
Попытка
Ждать Запись.ЗаписатьСтрокуАсинх("Книга");
Ждать Запись.ЗаписатьСимволыАсинх("Ручка");
Ждать Запись.ЗакрытьАсинх();
Исключение
Запись.Закрыть();
Поток.Закрыть();
ВызватьИсключение;
КонецПопытки;
Данные = Поток.ЗакрытьИПолучитьДвоичныеДанные();
Чтение = Новый ЧтениеДанных(Данные, КодировкаТекста.UTF8, , Символы.ПС);
Попытка
Сообщить(Чтение.РазделительСтрок = Символы.ПС);
ПерваяСтрока = Ждать Чтение.ПрочитатьСтрокуАсинх();
Остаток = Ждать Чтение.ПрочитатьСимволыАсинх();
Сообщить(ПерваяСтрока = "Книга");
Сообщить(Остаток = "Ручка");
Ждать Чтение.ЗакрытьАсинх();
Исключение
Чтение.Закрыть();
ВызватьИсключение;
КонецПопытки;
КонецПроцедурыРазбор по шагам
Конструкторы явно используют UTF-8 и разделитель ПС. BOM не добавляется по умолчанию.
Первый ожидаемый вызов пишет Книга и ПС, второй — только пять букв Ручка без добавленного ПС.
После закрытия записи создаём новое чтение полученных данных.
ПрочитатьСтрокуАсинх возвращает после Ждать строку Книга без разделителя, а ПрочитатьСимволыАсинх — остаток Ручка.
Все объекты локальны одному запуску: повторный клик не переиспользует чужую позицию чтения.
Как проверить результат
Все три сравнения Истина; первая строка Книга, остаток Ручка.
Повторный запуск выдаёт такой же результат и не создаёт файлов.
Ожидаемый результат
Получены именно строки, а не объекты обещаний; граница между записями сохранена.
На что обратить внимание
Не вставляйте клиентскую Асинх процедуру внутрь другой процедуры.
Успешная запись в память не означает отправку в сервис или сохранение в базу.
При работе с текстом всегда согласовывайте кодировку обеих сторон.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.