Memo polish char

0

wczytuje plik txt wktorym mam polskie znaki wtracone jako liczby -

spis plik'#243'w

jaka procedure zrobic by mi wyszyskie liczby zamienialo na polskie znaki

na razie zrobilem cos takiego:

function polskieznaki(b:string):string;
var w1,w2,w3:string;
begin
k:=0;z:=0;z2:=0;poz:=0;x:=0;x2:=0;x3:=0;x4:=0;x7:=0;
wy:=false;
w:='';
repeat
 x:=pos(''''+'#',copy(b,poz,length(b)));
 if x<>0 then begin
 poz:=poz+x;
 x2:=pos(chr(39),copy(b,poz+1,length(b)))-1;
   case x2 of
   2: w:=copy(b,poz+1,x2);
   3: w:=copy(b,poz+2,x2-1);
   4: w:=copy(b,poz+2,x2-1);
   else w:='0';
   end;
   poz:=poz+x2;
   w1:=copy(b,0,x-1);
   w2:=copy(b,poz+x2-2,length(b));
   w3:=chr(strtoint(w));
   b:=w1+w3+w2;
   end;
until x=0;
polskieznaki:=b;
end;

ale jak natrafinam na literke np. 'ą' to wartosc jesj wynosi 261 i zamist 'ą' pisze mi '#5'

o co chodzi?

czy ktos ma inny pomysl na rozwiazanie tego?

0

Lepiej zamiast całego tego algorytmu użyć StringReplace ?

0

czyli jak mam uzyc StringReplace() tak by w memo1 zastpąpil wszyskie znaki '#...' (w postaci acsi) na normlane ?

0

Okej.. trochę się pospieszyłem.. - postram się dzisiaj Ci to napisać bo sam się zaciekawiłem :)

0

ok, z gory dzieki
wszysko by bylo ok gdyby nie te wartosci powyzej 255 ...

0

Coś musiałeś pomylić.. Wartość "ą" wynosi #185

0

no moze jak generujesz ja sam ale w plikach *.dfm jest jako 261

1 użytkowników online, w tym zalogowanych: 0, gości: 1