Buffer.SetString
SetString (Изменение данных) | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Функция записывает в буфер символы из строки, предварительно перекодировав ее в требуемую кодировку. Будет произведена запись однобайтной строки. Буфет будет увеличен автоматически при необходимости.
Примеры кодов некоторых кириллических и прочих кодировок:
- -1 -- В функциях загрузки используется как псевдо-кодировка для отключения проверки BOM, загрузка будет происходить безусловно в строку ANSI без какой-либо перекодировки.
- 0 -- ANSI (текущая системная кодировка). При загрузке в такой кодировке, функции загрузки обычно проверяют наличие BOM, если он есть загружают в соответствии с ним.
- 866 -- Кириллица OEM
- 1200 -- UTF-16LE (стандарное многобайтовое строковое представление в системе)
- 1201 -- UTF-16BE (стандарное многобайтовое строковое представление в системе, с переставленными местами байтами)
- 1251 -- Кириллица Windows
- 1252 -- Стандартная латинская кодировка Windows (латиница-1)
- 20866 -- Кириллица KOI-8
- 65000 -- UTF-7
- 65001 -- UTF-8
Синтаксис
Buffer.SetString(<Индекс буфера (INT)>,<Строка для записи в буфер (STRING)>,<Кодовая страница (INT)>=0)
Аргументы
<Индекс буфера (INT)>
- Позиция в буфере для записи. Адресация буфера начинается с нуля.<Строка для записи в буфер (STRING)>
- Строка, которая будет записана в буфер.<Кодовая страница (INT)>
- (необязательный аргумент) Кодовая страница для перекодирования строки перед записью. Если значение равно нулю или не указано, строка не будет перекодирована перед записью (однако, если строка хранилась в UTF-16, она сначала будет превращена в ANSI с возможной потерей международных символов). Для сохранения строки в формате Unicode (1200), используйте функцию SetStringW.
Примеры
аБуф:=Buffer.Create(); аБуф.SetString(0,"Проверка работы функции",65000); //Будет выведено "+BB8EQAQ+BDIENQRABDoEMA- +BEAEMAQxBD4EQgRL- +BEQEQwQ9BDoERgQ4BDg-" Message(аБуф.GetString(0,аБуф.Size()));