![]() |
AW: Lazarus Fehler beim lesen einer Textdatei
Zitat:
|
AW: Lazarus Fehler beim lesen einer Textdatei
Zitat:
Zitat:
Delphi-Quellcode:
bzw.
Utf8ToAnsi
Delphi-Quellcode:
, wenn du einen String von der LCL an eine Funktion/Methode in der RTL bzw. FCL übergibst, dann passieren dir solche Probleme nicht (umgekehrt gilt das übrigens auch, da musst du jedoch
Utf8ToSys
Delphi-Quellcode:
bzw.
AnsiToUtf8
Delphi-Quellcode:
verwenden).
SysToUtf8
Gruß, Sven |
AW: Lazarus Fehler beim lesen einer Textdatei
TStringList nutzt doch hoffentlich CreateFileW und wandelt seine UTF-8-Strings selber um?
Statt dem älternen AssignFile könnte/sollte man sich dann vielleicht doch mal mit TStringList anfreunden. |
AW: Lazarus Fehler beim lesen einer Textdatei
Zitat:
Delphi-Quellcode:
TStringList
Delphi-Quellcode:
nutzen würde (tut es nicht, am Ende der Kette steht ein
CreateFileW
Delphi-Quellcode:
), würde das nichts nutzen, da per Definition die Units aus der RTL und der FCL die systemspezifische Kodierung verwenden. Unter Linux kann dies durchaus UTF-8 sein, aber zum Beispiel auf einem deutschen Windows ist dies CP1252. Das würde also bei der hypothetischen Verwendung von
CreateFileA
Delphi-Quellcode:
bedeuten, dass irgendwo in der Aufrufkette von
CreateFileW
Delphi-Quellcode:
hinunter zu
LoadFromFile
Delphi-Quellcode:
eine Ansi -> UTF-16 Konvertierung stattfinden würde und dann wären deine UTF-8-Zeichen nur noch Müll.
CreateFileW
Gruß, Sven |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:45 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