Преобразовать строковую переменную с кодом символа типа "#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);