Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#5

AW: Unicode und WideChar API-Funktionen

  Alt 29. Mär 2023, 01:24
Bei implizitem Cast wird gemeckert,

aber bei expliziten Casts nicht:
Delphi-Quellcode:
  FIni:= TIniFile.Create(AnsiString(FFileName));
  try
    FValue:= WideString(FIni.ReadString('foo', 'bar', 'blub'));
Das Zweite wäre kein Problem, da ja Klein zu Groß und es somit rein passen würde.

Beim Ersten, sieht es anders aus ... also problematisch, wenn Unicodezeichen im Dateiname vorkommen würden, welche außerhalb des jeweiligen ANSI-Zeichenraumes liegen.


ABER, ist das wirklich AnsiString, oder nicht vielleicht doch z.B. UTF-8 String?

Ich dachte der FPC hätte in seiner RTL schon "Unicode" und eben nicht ANSI.
Wenn z.B. ein UTF8-String, dann wäre es schon unpraktisch, wenn FPC keine automatische Konvertierung zwischen den String-Typen bietet.


Wie genau sind denn TIniFile.Create und TIniFile.ReadString "wirklich" deklariert?
https://www.freepascal.org/docs-html...eadstring.html

Wenn tatsächlich "String" und String = AnsiString, dann ... Wo bitte hat FPC denn seine unicode-fähige INI-Klasse versteckt?
$2B or not $2B

Geändert von himitsu (29. Mär 2023 um 01:27 Uhr)
  Mit Zitat antworten Zitat