Составители:
Рубрика:
12
б) в файл (создавая поток и вызывая два предыдущих метода):
procedure LoadFrornFile (const FileName: strings-procedure SaveToFile(const FileName: string);
в) в данные в формате текстового редактора (подряд расположенные строки, оканчивающиеся
парой символов CR/LF (16-ричные коды SOD/SOA)).
procedure AddScrings(Strings:
TStrings! ;
Добавляет в конец набора другой набор Strings.
procedure Assign!Source: T'Persisier-t l
;
Уничтожает прежнее содержимое набора и подставляет вместо
него Source, если источник имеет тип TStrings. В противном
случае возникает исключительная ситуация EConvertError.
При этом метод function GetText: PChar; выгружает строки в единый массив, где они разделены
парами символов CR/LF; в конце такого массива ставится нулевой байт. Размер массива не может пре-
вышать 65520 байт; поэтому строки выгружаются до тех пор, пока их суммарная длина не превосходит
этого значения.
Метод procedure SetText(Text: PChar); читает строки из массива Text. Строки в массиве должны
быть отделены друг от друга парой символов CR/LF; допускается и один символ LF (16-ричный код
$ОА). Символы с кодами 0, $lA(<Ctrl>+<Z>) воспринимаются как конец текста. При этом прежнее со-
держимое набора уничтожается.
Класс TStringList
Этот класс объединяет в себе свойства TStrings и TList простейшим способом — указатель на
объект и соответствующая строка объединяются в запись, указатель на
которую хранится в списке. В
классе переопределены многие виртуальные методы TStrings: Add, Clear, Delete, Exchange, IndexOf,
Insert; он является полностью функциональным и вы можете создавать экземпляры TStringList в своей
программе для работы с наборами строк и объектов (помимо тех, которые уже есть в компонентах).
Кроме унаследованных от TStrings, определены дополнительно полезные методы и свойства:
function Find(const S: string; var Index:
Integer): Boolean;
Метод ищет в наборе
строку S и в случае успеха возвращает
результат True, а в параметре Index — ее индекс.
property Sorted: Boolean; Свойство — признак отсортированности элементов (сортиров-
ка осуществляется через посимвольное сравнение строк). Уста-
новка Sort := True вызывает процедуру сортировки, которую
можно вызвать и явно при помощи метода:
procedure Sort; Попытка добавить или вставить элемент в отсортированный
список вызывает исключительную ситуацию EListError; в этом
случае до выполнения действия свойству Sorted нужно присво-
ить значение False.
property Duplicates: TDuplicates; TDu-
plicates = (duplgnore, dupAccept,
dupError);
Свойство определяет, что происходит при попытке добавить в
список дубликат уже имеющейся строки: duplgnore — добав-
ление игнорируется (отклоняется); dupError — добавление при-
водит к созданию исключительной ситуации EListError; dupAc-
cept — одинаковые строки разрешены. В этом случае при поис-
ке в неотсортированном списке не определено, которая из
строк будет найдена первой.
б) в файл (создавая поток и вызывая два предыдущих метода): procedure LoadFrornFile (const FileName: strings-procedure SaveToFile(const FileName: string); в) в данные в формате текстового редактора (подряд расположенные строки, оканчивающиеся парой символов CR/LF (16-ричные коды SOD/SOA)). procedure AddScrings(Strings: Добавляет в конец набора другой набор Strings. TStrings! ; procedure Assign!Source: T'Persisier-t l Уничтожает прежнее содержимое набора и подставляет вместо ; него Source, если источник имеет тип TStrings. В противном случае возникает исключительная ситуация EConvertError. При этом метод function GetText: PChar; выгружает строки в единый массив, где они разделены парами символов CR/LF; в конце такого массива ставится нулевой байт. Размер массива не может пре- вышать 65520 байт; поэтому строки выгружаются до тех пор, пока их суммарная длина не превосходит этого значения. Метод procedure SetText(Text: PChar); читает строки из массива Text. Строки в массиве должны быть отделены друг от друга парой символов CR/LF; допускается и один символ LF (16-ричный код $ОА). Символы с кодами 0, $lA(+ ) воспринимаются как конец текста. При этом прежнее со- держимое набора уничтожается. Класс TStringList Этот класс объединяет в себе свойства TStrings и TList простейшим способом — указатель на объект и соответствующая строка объединяются в запись, указатель на которую хранится в списке. В классе переопределены многие виртуальные методы TStrings: Add, Clear, Delete, Exchange, IndexOf, Insert; он является полностью функциональным и вы можете создавать экземпляры TStringList в своей программе для работы с наборами строк и объектов (помимо тех, которые уже есть в компонентах). Кроме унаследованных от TStrings, определены дополнительно полезные методы и свойства: function Find(const S: string; var Index: Метод ищет в наборе строку S и в случае успеха возвращает Integer): Boolean; результат True, а в параметре Index — ее индекс. property Sorted: Boolean; Свойство — признак отсортированности элементов (сортиров- ка осуществляется через посимвольное сравнение строк). Уста- новка Sort := True вызывает процедуру сортировки, которую можно вызвать и явно при помощи метода: procedure Sort; Попытка добавить или вставить элемент в отсортированный список вызывает исключительную ситуацию EListError; в этом случае до выполнения действия свойству Sorted нужно присво- ить значение False. property Duplicates: TDuplicates; TDu- Свойство определяет, что происходит при попытке добавить в plicates = (duplgnore, dupAccept, список дубликат уже имеющейся строки: duplgnore — добав- dupError); ление игнорируется (отклоняется); dupError — добавление при- водит к созданию исключительной ситуации EListError; dupAc- cept — одинаковые строки разрешены. В этом случае при поис- ке в неотсортированном списке не определено, которая из строк будет найдена первой. 12
Страницы
- « первая
- ‹ предыдущая
- …
- 10
- 11
- 12
- 13
- 14
- …
- следующая ›
- последняя »