![]() |
Textdateien mit Umlauten im Inhalt
Nach langen Jahren Pause wollte ich mal wieder was mit Delphi machen, habe dann Lazarus gefunden, und bin an folgendem Problem hängen geblieben:
Ich möchte Textdateien in ein Memo einlesen, bearbeiten und dann wieder zurückschreiben. Wäre kein Problem, wenn das Memo Umlaute lesen könnte. Sie werden sämtlich durch ein "?" ersetzt. Ich habe verschiedene CharSets bei Eigenschaft Font ausprobiert, alles mit dem nämlichen Ergebnis. Hat jemand eine Idee? |
AW: Textdateien mit Umlauten im Inhalt
Welcher Charset? ANSI oder ASCII?
|
AW: Textdateien mit Umlauten im Inhalt
Unicode?
|
AW: Textdateien mit Umlauten im Inhalt
Zitat:
Delphi-Quellcode:
Siehe dazu auch
begin
DeinText := {lade Text aus Datei} Memo1.Lines.Text := SysToUTF8(DeinText); // alternativ sollte auch AnsiToUTF8 funktionieren end; ![]() Gruß, Sven |
AW: Textdateien mit Umlauten im Inhalt
Zitat:
Allerdings habe ich da denn doch noch ein Verständnisproblem: Von welchem Typ ist "DeinText"? Oder gleich ausführlich: Wie realisiere ich |
AW: Textdateien mit Umlauten im Inhalt
Zitat:
Allerdings habe ich da denn doch noch ein Verständnisproblem: Von welchem Typ ist "DeinText"? Oder gleich ausführlich: Wie realisiere ich DeinText := {lade Text aus Datei}? Und wenn ich schon dabei bin, dumme Fragen zu stellen: Muss ich eigens eine Unit einbinden, in der SysToUTF8 deklariert ist, falls ja: welche? In Hoffnung, Andreas |
AW: Textdateien mit Umlauten im Inhalt
Genau lesen ;)
Zitat:
|
AW: Textdateien mit Umlauten im Inhalt
Zitat:
SysToUTF8/UTF8ToSys und AnsiToUTF8/UTF8ToAnsi sind in SysUtils oder gar System definiert (ich glaube allerdings System). Letztere musst du gar nicht einbinden (die ist immer verfügbar), die erstere ist meist eh schon eingebunden. Die Funktionen in FileUtils sind UTF8 Wrapper um die Ansi Funktionen in SysUtils und Co. Edit: Da hätte ich doch glatt deine andere Frage vergessen: Zitat:
Delphi-Quellcode:
ist vom Typ
DeinText
Delphi-Quellcode:
. Um ihn zu bekommen kannst du zum Beispiel folgendes machen:
String
Delphi-Quellcode:
Alternativ kannst du statt
var
slist: TStringList; begin with TStringList.Create do try LoadFromFile(DeinDateiName); // ein String DeinText := Text; finally Free; end; end;
Delphi-Quellcode:
auch gleich
DeinText
Delphi-Quellcode:
verwenden.
Memo1.Lines.Text := SysToUTF8(Text)
Gruß, Sven |
AW: Textdateien mit Umlauten im Inhalt
Zitat:
Nur noch eine Bemerkung: Ich habe mich gewundert, wozu die Variable
Delphi-Quellcode:
ist, sie wird anscheinend nicht verwendet. Findet der Compiler überigens auch. Ich habe sie versuchsweise auskommentiert, und ohne scheint es genauso gut zu funktionieren.
slist: TStringList
Jedenfalls: Ganz großen Dank an Sven! Von meiner Seite aus ist dieser Thread hiermit erledigt. Andreas |
AW: Textdateien mit Umlauten im Inhalt
Zitat:
Delphi-Quellcode:
machen).
with
Gut zu wissen, dass es dir aber weitergeholfen hat. :) Gruß, Sven |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:00 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz