Преобразовать строковую переменную с кодом символа типа "#1060" в символ

Собственно есть строка строка с кодами символов - "#1060#1072#1085" из нее копируется в переменную код символа "#1060". теперь его нужно преобразовать в символ.

код

ach: PWideChar;
t: string;
ach := WideChar(#1060);
WideCharToStrVar(ach, t);

прекрасно возвращает символ Ф. при попытке

ach: PWideChar;
t, t1: string;
t1 := '#1060';
ach := WideChar(t1);
WideCharToStrVar(ach, t);

выдает ошибку. Явно упускаю что-то промежуточное - но не могу понять что... С Юникодом работал мало. ANSI хватало с головой.


Ответы (1 шт):

Автор решения: MBo

Часть строки нужно преобразовать в число.

var
   ch: WideChar;
   t1: string;
begin
  t1 := '#1060';
  ch := WideChar(Copy(t1, 2, length(t1)).ToInteger);
  Caption := ch;

Если выделять из исходной строки без #, то и Copy не понадобится

t1 := '1060';
ch := WideChar(t1.ToInteger);
→ Ссылка