Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi UniCode to Ansi (https://www.delphipraxis.net/106590-unicode-ansi.html)

Thorben_Ko 13. Jan 2008 14:01


UniCode to Ansi
 
Hallo

ich hab eine Textdatei die in UniCode codiert ist (kein UTF-8, sondern laut Windows Text Editor "UniCode"). Da stehen nur Zeichen drin die auch im Ansi bzw Asccii zeichensatz enhallten sind. Ich suche eine möglichkeit wie ich diese Datei in eine TStringList einlesen kann, und auch was "erkenne".

Gibts da einen einfachen weg?

Gruss Thornen

Bernhard Geyer 13. Jan 2008 15:11

Re: UniCode to Ansi
 
TNTWare bzw. ElPack haben Stringlisten mit Unicode-Funktionalität welche Unicode-Codierte Dateien lesen können.
Im Forum (Evtl. auch CodeLib) gibt es Beispiel ohne diese Komponentensammlungen.

marabu 13. Jan 2008 16:16

Re: UniCode to Ansi
 
Hallo,

Unicode-kompatible Komponenten sind eine feine Sache.

Unter einfachen Randbedingungen lässt sich eine Unicode-Datei auch mit Delphi-Bordmitteln einlesen:

Delphi-Quellcode:
procedure LoadFromFile(s: TStrings; fn: TFileName);
var
  u: string;
  ws: WideString;
begin
  with TFileStream.Create(fn, fmOpenRead or fmShareDenyWrite) do
  try
    // BOM handling omitted
    SetLength(ws, Size shr 1);
    Read(ws[1], Size);
    u := Utf8Encode(ws);
    s.Text := Utf8ToAnsi(u);
  finally
    Free;
  end;
end;
Grüße vom marabu


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:22 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz