Hallo,
ich habe im Internet von dieser Klasse erfahren und will nun mal folgendes machen:
Ich habe wie das auch im Windows
API der Fall ist, eine Funktion einmal für AnsiString und einmal für WideString.
Delphi-Quellcode:
function DoSomethingWithStringA(StringA: AnsiString): <irgendein Ergebnistyp>;
begin
end;
function DoSomethingWithStringW(StringW: WideStringString): <irgendein Ergebnistyp>;
begin
end;
Nun will ich nicht den Ablauf für beide Funktionen einmal für AnsiString und einmal für WideString schreiben, sondern den AnsiString in WideString konvertieren und dann die Widestring Funktion aufrufen.
Delphi-Quellcode:
function DoSomethingWithStringA(StringA: AnsiString): <irgendein Ergebnistyp>;
begin
//Mit TEncoding den AnsiString "SreingA" in einen Widestring konvertieren den ich hier StrConToWideStr nennen will, danach:
DoSomethingWithStringW(StrConToWideStr); //aufrufen
end;
Das gleiche auch in die andere Richtung, falls ich den WideString an eine Funktion übergeben muss aber dann in der Funktion einen Ansistring brauche.
Delphi-Quellcode:
function DoSomethingWithStringW(StringW: WideString): <irgendein Ergebnistyp>;
begin
//Mit TEncoding den AnsiString "SreingA" in einen AnsiString konvertieren, den ich hier StrConToAnsiStr nennen will, danach
DoSomethingWithStringA(StrConToAnsiStr);
end;
Wie muss ich da die TEncoding Klasse anwenden. Wo gibt es da einleuchtende einfache Beispiele in Object Pascal?
Das Beispiel hier:
https://riptutorial.com/de/delphi/ex...12/kodierungen
ist mir zu kompliziert und es benutzt eine TStringList, die eine Methode SaveToFile aufweist, der ich eine TEncoding Klasse übergeben kann. Den Rest aber tut die Methode SaveToFile intern.
Dort finde ich einerseits diese Zeile:
stringList.saveToFile('file.txt',SysUtils.TEncoding.Unicode);
Hier gehe ich davon aus, dass wegen "SysUtils.TEncoding.Unicode" der String 'file.txt' in einen
Unicode String konvertiert wird
stringStream := TStringStream(hello,SysUtils.TEncoding.Unicode);
Diese Typecasting Syntax ist mir völlig neu, ich gehe aber davon aus, dass hier der Strin in der Variablen "hello" in einen
Unicode String verwwandelt wird.
Wie aber muss ich bei meinem Vorhaben vorgehen? Das habe ich immer noch nicht verstanden.
Wer kann mir weiter helfen?