[Lazarus-es] La letra Ñ
José Mejuto
joshyfun en gmail.com
Mie Ago 4 00:18:59 CEST 2010
Hello franmate,
Tuesday, August 3, 2010, 11:53:27 PM, you wrote:
>> a_mayu[20] := UTF8ToAnsi('N')[1];
fgc> con eso accedes al primer byte del caracter utf8 Ñ , que es 195
fgc> (decimal) , [2] es 145 ( el que ves como un "cuadradito" )
No, lo que tu dices sería: "'Ñ'[1]" UTF8ToAnsi pasa "multibyte" UTF8 a
"singlebyte" ANSI, pero devuelve en formato de string, por lo tanto
tienes que acceder al primer caracter que será la "Ñ" en ANSI.
Comprobación fácil:
var
a,b,c: string;
begin
a:='Ñ';
writeln(Length(a));
b:=UTF8ToAnsi(a);
writeln(Length(b));
c:=UTF8ToAnsi(a)[1];
writeln(Length(c));
writeln('');
Writeln('Salida sin conversión: ',a);
Writeln('Salida UTF8ToAnsi: ',UTF8ToAnsi(a));
writeln('Salida AnsiToUTF8: ',AnsiToUTF8(a));
end;
--
Best regards,
José
More information about the Lazarus-es
mailing list