Text.TranslateTo

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

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

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

  • 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.TranslateTo(<Кодовая страница (INT)>,<Добавить BOM (INT)>=0)

Аргументы

  • <Кодовая страница (INT)> - Кодовая страница, в которую необходимо перекодировать текст.
  • <Добавить BOM (INT)> - (необязательный аргумент) Если этот аргумент равен 1, функция добавит корректный BOM для кодировок UTF-16LE, UTF-16BE и UTF-8 после завершения процесса перекодирования, в ином случае (по умолчанию), BOM добавлен не будет, если BOM существовал, он будет удален.

Примеры

Т:=Text.Create(1);
Т.AddString("<?xml version=""1.0"" encoding=""utf-8""?>");
Т.AddString("<test>Проверка</test>");
//Изменение кодировки на UTF-8, объект далее имеет признак ANSI, однако, сам текст хранится в UTF-8
Т.TranslateTo(65001);
Т.Save("C:\test.xml");