Hallo,
dieses Problem hatten sicher auch schon andere vor mir, habe leider im Forum keinen passenden Beitrag gefunden.
Habe ein Projekt (Adressverwaltung) von Delphi auf Lazarus umgestellt. Bei allen angezeigten Texten aus der Datenbank (Dbase mit der Komponente TDbf) werden die deutschen Umlaute als ? dargestellt. Bei Text aus einer gewöhnlichen Textdatei tritt der selbe Effekt auf. Ich nehme an die verwendete Codetabelle für den Zeichensatz passt nicht. Betriebssystem ist Windows XP.
Meine Frage an Euch, wie kann ich das ändern?
Hoffe jemand kann mir bei diesem Problem behilflich sein.
Gruss, Jürgen
Deutsche Umlaute werden als ? dargestellt
-
- Beiträge: 3444
- Registriert: Mo 11. Sep 2006, 10:24
- OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
- CPU-Target: X32 / X64 / ARMv5
- Wohnort: Krefeld
Re: Deutsche Umlaute werden als ? dargestellt
Offensichtlich verwendet die Datenbank eine andere Zeichen-Codierung als die LCL. die LCL verwendet UTF-8. Was der Datenbank-Treiber abgibt, müsste in der Doku zu finden sein. Es kann auch von der Konfiguration des Treibers, des Datenbank-Servers und/oder der Definition der Tabellen beim Einrichten der Datenbank abhängen.
-Michael
-Michael
Re: Deutsche Umlaute werden als ? dargestellt
Hallo Michael,mschnell hat geschrieben:Offensichtlich verwendet die Datenbank eine andere Zeichen-Codierung als die LCL. die LCL verwendet UTF-8. Was der Datenbank-Treiber abgibt, müsste in der Doku zu finden sein. Es kann auch von der Konfiguration des Treibers, des Datenbank-Servers und/oder der Definition der Tabellen beim Einrichten der Datenbank abhängen.
-Michael
danke für Deinen Beitrag. Es liegt nicht am Datenbanktreiber, deshalb habe ich die Textdatei erwähnt, die direkt geladen wird, ohne Datenbank und da ist es genauso.
Jürgen
Re: Deutsche Umlaute werden als ? dargestellt
Dann liegt deine Textdatei halt auch nicht in UTF-8 vor.
Du musst umwandeln, bzw. in die Kodierung der DB ändern.
Umwandeln geht mit Methoden der Unit LConvEncoding.
Du musst umwandeln, bzw. in die Kodierung der DB ändern.
Umwandeln geht mit Methoden der Unit LConvEncoding.
Re: Deutsche Umlaute werden als ? dargestellt
Theo, vielen Dank. Dir auch nochmal Michael. Ihr beide habt mich schon auf die richtige Spur gebracht.theo hat geschrieben:Dann liegt deine Textdatei halt auch nicht in UTF-8 vor.
Du musst umwandeln, bzw. in die Kodierung der DB ändern.
Umwandeln geht mit Methoden der Unit LConvEncoding.
Jürgen