Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

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

AW: WideStringlist in UTF-8 mit Delphi 2007 speichern

  Alt 31. Aug 2023, 14:19
Jupp, das #$FEFF ist das Unicode-BOM.

Es wird in der jeweiligen Codepage gespeichert. (wenn sie es darstellen kann)


Am Einfachsten als Char/WideChar an den Anfang des Textes.
BOM geht z.B. beim UTF-16-LE, UTF-16-BE und UTF-8. (ja, die 3 UTF8-Bytes sind jenes Char)

Delphi-Quellcode:
  Zeile := UTF8Encode(#$FEFF + Content.Text);
  Stream := TFileStream.Create(Filename, fmCreate);
  try
    //Stream.WriteBuffer(sUTF8BOMString[1], Length(sUTF8BOMString));
    Stream.WriteBuffer(Zeile[1], Length(Zeile)); // natürlich würde @Zeile[1] knallen, wenn der String leer ist
  finally
    Stream.Free;
  end;
Hach, wie schön doch ein Delphi-Referenz durchsuchenTFile.WriteAllText sein kann.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (31. Aug 2023 um 16:25 Uhr)
  Mit Zitat antworten Zitat