Поледержатель | Описания формата и преобразований |
---|---|
@<<<<<<<<<<< | Вывести текстовое значение в поле шириной в 12 символов. Выровнять его по левому краю, дополнив при необходимости пробелами справа до ширины поля. Слишком длинное значение усечь до ширины поля |
@<<<<<<<<... | Аналогично предыдущему примеру, но с выведением в конце поля многоточия, если значение усечено |
@####.### | Вывести числовое значение в поле шириной в 9 символов, отведя 5 цифр под целую и 3 цифры - под дробную часть числа. Выровнять его по правому краю и дополнить при необходимости целую часть числа пробелами слева до ширины поля и округлить дробную часть до 3 знаков. При попытке вывести число, целая часть которого не умещается в ширину поля, заполнить поле символом '#' как признак |
@0###.### | Так же, как в предыдущем примере, но с дополнением целой части значения ведущими нулями до ширины поля |
Полный список символов, применяемых для описания полей и форматов, приводится в таблице 10.2.
Символ | Описание | Примеры использования |
---|---|---|
@ | начало обычного поля | @ @<< @||| @>> @## |
^ | начало специального поля | ^ ^<< ^||| ^>> ^## |
< | текстовое поле с выравниванием значения влево и добавлением пробелов справа | @<<<<< ^<<< |
| | текстовое поле с центрированием значения и добавлением пробелов с обеих сторон | @||||| ^||| |
> | текстовое поле с выравниванием значения вправо и добавлением пробелов слева | @>>>>> ^>>> |
# | числовое поле с выравниванием значения вправо с добавлением пробелов слева | @#### ^### |
0 | (вместо первого #) числовое поле с выравниванием значения вправо и добавлением нулей слева | @0### ^0## |
. | десятичная точка в числовом поле | @.### @0##.## |
... | закончить текстовое поле многоточием, чтобы показать усечение значения | @<<<<<... |
@* | поле переменной ширины со значением, состоящим из нескольких строк | @* |
^* | поле переменной ширины для следующих строк многострочного значения | ^* |
~ | подавление вывода строки с пустыми значениями полей | ^* ~ |
~~ | повторять строку, пока все значения полей не станут пустыми | ~~ ^* |
{} | группировка списка значений, который располагается на нескольких строках аргументов | {$one, $two, $three } |
# | (первым символом в строке) строка комментария в описании формата (не может располагаться между строкой шаблонов и строкой аргументов) | # это комментарий |
. | (единственным символом на отдельной строке) конец формата | format REPORT = описание формата . |
То, как применяются поледержатели при описании формата, можно увидеть из следующего примера:
Вильям Л Саймон , Вильям Саймон , Наталья Владимировна Макеева , Нора Робертс , Юрий Викторович Щербатых
Зарубежная компьютерная, околокомпьютерная литература / ОС и Сети, интернет / Короткие любовные романы / Психология / Прочая справочная литература / Образование и наука / Книги по IT / Словари и Энциклопедии