Text.Translate

From SunFlurry wiki
Jump to: navigation, search
  Translate (Изменение кодировки)
Объект:Текст
Статус разработки: Реализована
Тип:Функция
Обращение к БД:Нет
Исключения:Невозможно превратить в число
Визуальность:Нет

Функция производит перекодировку текущего содержимого объекта из кодовой страницы, заданной первым аргументом, в кодовую страницу, заданную вторым аргументом в UTF-16, при необходимости удаляя и добавляя BOM. При перекодировке в UTF-16 объект-результат будет иметь режиме Unicode, при перекодировке в любую другую кодировку -- режим ANSI. По своему действую функция совмещает две функции перекодировки TranslateFrom и TranslateTo.

Примеры кодов некоторых кириллических и прочих кодировок:

  • 0 -- ANSI (текущая системная кодировка)
  • 866 -- Кириллица OEM
  • 1200 -- UTF-16LE (стандарное многобайтовое строковое представление в системе)
  • 1201 -- UTF-16BE (стандарное многобайтовое строковое представление в системе, с переставленными местами байтами)
  • 1251 -- Кириллица Windows
  • 1252 -- Стандартная латинская кодировка Windows (латиница-1)
  • 20866 -- Кириллица KOI-8
  • 65000 -- UTF-7
  • 65001 -- UTF-8

Синтаксис

Text.Translate(<Исходная кодовая страница (INT)>,<Результирующая кодовая страница (INT)>,<Удалять и добавлять BOM (INT)>=0)

Аргументы

  • <Исходная кодовая страница (INT)> - Кодовая страница, из которой будет перекодирован текущий текст.
  • <Результирующая кодовая страница (INT)> - Кодовая страница, в которую будет перекодирован текущий текст.
  • <Удалять и добавлять BOM (INT)> - (необязательный аргумент) Удалять также BOM при его наличии в начале текста и добавлять после осуществления перекодировки. 1 -- да, 0 -- нет (по умолчанию).

Примеры

Т:=Text.Create(0);
Т.AddString(ВнешняяСтрока);
//Перекодировка из UTF-8 в UTF-16BE
Т.Translate(65001,1201);
...