Преобразовать(<КодировкаИсточника>, <КодировкаНазначения>, <БайтМассив>)
Тип: МассивСписок (ArrayList).
Объект МассивСписок (ArrayList), содержащий результат преобразования.
Преобразует массив байтов из одной кодировки в другую.
При преобразовании массива байтов, с использованием кодировки, полученной через свойство ПоУмолчанию (ByDefault), и получением после этого строкового значения, в конце строки может быть добавлено несколько символов.
Эти символы будут соответствовать коду 9702 в кодировке Unicode (Прозрачный маркер списка).
Кодировка1 = Ф.Кодировка().Юникод; // задали исходную кодировку Кодировка2 = Ф.Кодировка().UTF7; // задали конечную кодировку МассивСписок1 = Кодировка1.ПолучитьБайты("Некоторый текст и ! знак, и буква В!"); // получили массив байтов в исходной кодировке МассивСписок2 = Ф.Кодировка().Преобразовать(Кодировка1, Кодировка2, МассивСписок1); // преобразовали массив байтов в конечную кодировку Сообщить("Кодировка1 = " + Кодировка1.ПолучитьСтроку(МассивСписок1)); // Кодировка1 = Некоторый текст и ! знак, и буква В! Сообщить("Кодировка2 = " + Кодировка2.ПолучитьСтроку(МассивСписок2)); // Кодировка2 = Некоторый текст и ! знак, и буква В!
Копировать Выделить всёПодключитьВнешнююКомпоненту("C:\444\111\OneScriptForms\OneScriptForms\bin\Debug\OneScriptForms.dll"); Ф = Новый ФормыДляОдноСкрипта(); Форма1 = Ф.Форма(); Форма1.Отображать = Истина; Форма1.Показать(); Форма1.Активизировать(); Кодировка1 = Ф.Кодировка().Юникод; // задали исходную кодировку Кодировка2 = Ф.Кодировка().UTF7; // задали конечную кодировку МассивСписок1 = Кодировка1.ПолучитьБайты("Некоторый текст и ! знак, и буква В!"); // получили массив байтов в исходной кодировке МассивСписок2 = Ф.Кодировка().Преобразовать(Кодировка1, Кодировка2, МассивСписок1); // преобразовали массив байтов в конечную кодировку Сообщить("Кодировка1 = " + Кодировка1.ПолучитьСтроку(МассивСписок1)); // Кодировка1 = Некоторый текст и ! знак, и буква В! Сообщить("Кодировка2 = " + Кодировка2.ПолучитьСтроку(МассивСписок2)); // Кодировка2 = Некоторый текст и ! знак, и буква В! Ф.ЗапуститьОбработкуСобытий();
Копировать Выделить всёПодключитьВнешнююКомпоненту("C:\444\111\OneScriptForms\OneScriptForms\bin\Debug\OneScriptForms.dll"); Ф = Новый ФормыДляОдноСкрипта(); Форма1 = Ф.Форма(); Форма1.Отображать = Истина; Форма1.Показать(); Форма1.Активизировать(); ТестПройден = Истина; Текст1 = "Некоторый текст и ! знак, и буква В!"; Кодировка1 = Ф.Кодировка().UTF7; // задали исходную кодировку Кодировка2 = Ф.Кодировка().UTF7; // задали конечную кодировку МассивСписок1 = Кодировка1.ПолучитьБайты(Текст1); // получили массив байтов в исходной кодировке МассивСписок2 = Ф.Кодировка().Преобразовать(Кодировка1, Кодировка2, МассивСписок1); // преобразовали массив байтов в конечную кодировку Если Не (Текст1 = Кодировка2.ПолучитьСтроку(МассивСписок2)) Тогда ТестПройден = Ложь; КонецЕсли; Кодировка1 = Ф.Кодировка().UTF7; Кодировка2 = Ф.Кодировка().UTF8; МассивСписок1 = Кодировка1.ПолучитьБайты(Текст1); МассивСписок2 = Ф.Кодировка().Преобразовать(Кодировка1, Кодировка2, МассивСписок1); Если Не (Текст1 = Кодировка2.ПолучитьСтроку(МассивСписок2)) Тогда ТестПройден = Ложь; КонецЕсли; Кодировка1 = Ф.Кодировка().UTF7; Кодировка2 = Ф.Кодировка().ОбратнаяUTF16; МассивСписок1 = Кодировка1.ПолучитьБайты(Текст1); МассивСписок2 = Ф.Кодировка().Преобразовать(Кодировка1, Кодировка2, МассивСписок1); Если Не (Текст1 = Кодировка2.ПолучитьСтроку(МассивСписок2)) Тогда ТестПройден = Ложь; КонецЕсли; Кодировка1 = Ф.Кодировка().UTF7; Кодировка2 = Ф.Кодировка().Юникод; МассивСписок1 = Кодировка1.ПолучитьБайты(Текст1); МассивСписок2 = Ф.Кодировка().Преобразовать(Кодировка1, Кодировка2, МассивСписок1); Если Не (Текст1 = Кодировка2.ПолучитьСтроку(МассивСписок2)) Тогда ТестПройден = Ложь; КонецЕсли; Кодировка1 = Ф.Кодировка().UTF8; Кодировка2 = Ф.Кодировка().UTF7; МассивСписок1 = Кодировка1.ПолучитьБайты(Текст1); МассивСписок2 = Ф.Кодировка().Преобразовать(Кодировка1, Кодировка2, МассивСписок1); Если Не (Текст1 = Кодировка2.ПолучитьСтроку(МассивСписок2)) Тогда ТестПройден = Ложь; КонецЕсли; Кодировка1 = Ф.Кодировка().UTF8; Кодировка2 = Ф.Кодировка().UTF8; МассивСписок1 = Кодировка1.ПолучитьБайты(Текст1); МассивСписок2 = Ф.Кодировка().Преобразовать(Кодировка1, Кодировка2, МассивСписок1); Если Не (Текст1 = Кодировка2.ПолучитьСтроку(МассивСписок2)) Тогда ТестПройден = Ложь; КонецЕсли; Кодировка1 = Ф.Кодировка().UTF8; Кодировка2 = Ф.Кодировка().ОбратнаяUTF16; МассивСписок1 = Кодировка1.ПолучитьБайты(Текст1); МассивСписок2 = Ф.Кодировка().Преобразовать(Кодировка1, Кодировка2, МассивСписок1); Если Не (Текст1 = Кодировка2.ПолучитьСтроку(МассивСписок2)) Тогда ТестПройден = Ложь; КонецЕсли; Кодировка1 = Ф.Кодировка().UTF8; Кодировка2 = Ф.Кодировка().Юникод; МассивСписок1 = Кодировка1.ПолучитьБайты(Текст1); МассивСписок2 = Ф.Кодировка().Преобразовать(Кодировка1, Кодировка2, МассивСписок1); Если Не (Текст1 = Кодировка2.ПолучитьСтроку(МассивСписок2)) Тогда ТестПройден = Ложь; КонецЕсли; Кодировка1 = Ф.Кодировка().ОбратнаяUTF16; Кодировка2 = Ф.Кодировка().UTF7; МассивСписок1 = Кодировка1.ПолучитьБайты(Текст1); МассивСписок2 = Ф.Кодировка().Преобразовать(Кодировка1, Кодировка2, МассивСписок1); Если Не (Текст1 = Кодировка2.ПолучитьСтроку(МассивСписок2)) Тогда ТестПройден = Ложь; КонецЕсли; Кодировка1 = Ф.Кодировка().ОбратнаяUTF16; Кодировка2 = Ф.Кодировка().UTF8; МассивСписок1 = Кодировка1.ПолучитьБайты(Текст1); МассивСписок2 = Ф.Кодировка().Преобразовать(Кодировка1, Кодировка2, МассивСписок1); Если Не (Текст1 = Кодировка2.ПолучитьСтроку(МассивСписок2)) Тогда ТестПройден = Ложь; КонецЕсли; Кодировка1 = Ф.Кодировка().ОбратнаяUTF16; Кодировка2 = Ф.Кодировка().ОбратнаяUTF16; МассивСписок1 = Кодировка1.ПолучитьБайты(Текст1); МассивСписок2 = Ф.Кодировка().Преобразовать(Кодировка1, Кодировка2, МассивСписок1); Если Не (Текст1 = Кодировка2.ПолучитьСтроку(МассивСписок2)) Тогда ТестПройден = Ложь; КонецЕсли; Кодировка1 = Ф.Кодировка().ОбратнаяUTF16; Кодировка2 = Ф.Кодировка().Юникод; МассивСписок1 = Кодировка1.ПолучитьБайты(Текст1); МассивСписок2 = Ф.Кодировка().Преобразовать(Кодировка1, Кодировка2, МассивСписок1); Если Не (Текст1 = Кодировка2.ПолучитьСтроку(МассивСписок2)) Тогда ТестПройден = Ложь; КонецЕсли; Кодировка1 = Ф.Кодировка().Юникод; Кодировка2 = Ф.Кодировка().UTF7; МассивСписок1 = Кодировка1.ПолучитьБайты(Текст1); МассивСписок2 = Ф.Кодировка().Преобразовать(Кодировка1, Кодировка2, МассивСписок1); Если Не (Текст1 = Кодировка2.ПолучитьСтроку(МассивСписок2)) Тогда ТестПройден = Ложь; КонецЕсли; Кодировка1 = Ф.Кодировка().Юникод; Кодировка2 = Ф.Кодировка().UTF8; МассивСписок1 = Кодировка1.ПолучитьБайты(Текст1); МассивСписок2 = Ф.Кодировка().Преобразовать(Кодировка1, Кодировка2, МассивСписок1); Если Не (Текст1 = Кодировка2.ПолучитьСтроку(МассивСписок2)) Тогда ТестПройден = Ложь; КонецЕсли; Кодировка1 = Ф.Кодировка().Юникод; Кодировка2 = Ф.Кодировка().ОбратнаяUTF16; МассивСписок1 = Кодировка1.ПолучитьБайты(Текст1); МассивСписок2 = Ф.Кодировка().Преобразовать(Кодировка1, Кодировка2, МассивСписок1); Если Не (Текст1 = Кодировка2.ПолучитьСтроку(МассивСписок2)) Тогда ТестПройден = Ложь; КонецЕсли; Кодировка1 = Ф.Кодировка().Юникод; Кодировка2 = Ф.Кодировка().Юникод; МассивСписок1 = Кодировка1.ПолучитьБайты(Текст1); МассивСписок2 = Ф.Кодировка().Преобразовать(Кодировка1, Кодировка2, МассивСписок1); Если Не (Текст1 = Кодировка2.ПолучитьСтроку(МассивСписок2)) Тогда ТестПройден = Ложь; КонецЕсли; Сообщить(?(ТестПройден, "", "!!! ") + "Кодировка.Преобразовать (Encoding.Convert) Метод" + " " + ТекущаяДата());