Entwickler-Ecke

Datenbanken - Charaset von dbase-Datenbanke ändern - 2. Teil


kiwicht - Mo 23.12.02 10:46
Titel: Charaset von dbase-Datenbanke ändern - 2. Teil
Tja, äh hallo nochma...

ersma danke an Hansa, weil von ihm kam der folgende, wahrliche göttliche Code:

Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
function IBMAsciiToAnsi(s: string): string; 
var 
  result : string; 
  i: integer; 
begin 
  Result := ''; 
  for i := 1 to Length(s) do 
  begin 
    case s[i] of 
      #142: Result := Result + #196; {ä} 
      #153: Result := Result + #214; {ö} 
      [...]
         else 
      Result := Result + s[i]; 
    end; 
  end; 
  IBMAsciiToAnsi := result; 
end;


daran hab ich ja eigentlich auch nix auszusetzen, bin eher dankbar für. aber, es funzt nicht.
nun hab ich 2 edit-felder, und hab einmal zum testen auf einen Button gelegt:

Quelltext
1:
Edit2.Text := IBMAsciiToAnsi(Edit1.Text);                    

da das nich geklappt hat, versuchte ich dann folgendes, also direkt den Umlaut übergeben:

Quelltext
1:
Edit2.Text := IBMAsciiToAnsi('ö');                    

Geht auch nicht. Weil in beiden Fällen, bekomme ich immer den gleichen Umlaut zurück geliefert... keine Umwandlung. nix.
Ich mir den Codeblock noch ma angeschaut. nix fehler.
zumal mir die programmierung ja selbst auch sehr einleuchtend erscheint, da ich das prinzip von case & length und so in genau der form vom flash-actionscript her kenne, womit ich mich ja sehr gut zurechtfinde.... muss der fehler also bei meinen aufrufen der funktion liegen....

bitte noch ma einem kleinen delphi-nub helfen.. doanke...

mfg
kiwicht