Hej!
Nie wiem czy to pytanie będzie do końca zrozumiałe ale co tam ;).
Mój problem to jak sformatować ciąg np. Byte (ablo dowolny ciąg) do formatu ISO aby uniknąć wyświetlania tzw. "krzaczków"? Z góry dziękuje za odpowiedzi.
Hej!
Nie wiem czy to pytanie będzie do końca zrozumiałe ale co tam ;).
Mój problem to jak sformatować ciąg np. Byte (ablo dowolny ciąg) do formatu ISO aby uniknąć wyświetlania tzw. "krzaczków"? Z góry dziękuje za odpowiedzi.
Ciąg Byte? .. masz na myśli tablicę znaków, czyli łańcuch - takowa funkcja była wiele razy tu ..
function IsoCode(s: string): string;
var
i: Integer;
begin
for i := 1 to length(s) do
begin
case s[i] of
'ą' : s[i] := '?';
'Ą' : s[i] := 'ˇ';
'ś' : s[i] := '?';
'Ś' : s[i] := '?';
'ź' : s[i] := 'Ľ';
'Ź' : s[i] := '?';
else
end;
end;
end;
Albo:
uses
strutils;
const
cp1250: array[1..18] of string = ( #185, #230, #234, #179, #241, #243, #156, #159, #191, #165, #198, #202, #163, #209, #211, #140, #143, #175 );
ISO88592: array[1..18] of string = ( #177, #230, #234, #179, #241, #243, #182, #188, #191, #161, #198, #202, #163, #209, #211, #166, #172, #175 );
function CP1250ToISO88592( const tekst:string ):string;
var x:integer;
begin
result:=tekst;
for x:=1 to 18 do
begin
result:=AnsiReplaceStr( result, cp1250[x], ISO88592[x] );
end;
end;