Habe da ein Problem, das krieg ich einfach nicht gelöst.
Habe ein Delphi-Server-Programm, welches über Vorgabe IOHandler.DefstringEncoding = UTF8 eine Text-Nachricht über das Netz schickt (per "Writeln")
Auf der Gegenseite wird das mit IOHandler.ReadLN gelesen (vorher auch DefstringEncoding auf UTF8 gesetzt).
Beim gleichem Source-Code:
- Der VCL-Windows-Client liest den Text, hier "PC-Adreßzz! Server" korrekt.
- Der Lazarus-Windows-Client auch.
* Aber unter MAC und Linux bricht da ReadlN bei dem deutschen Sonderzeichen "ß" ab und verschluckt den Rest.
Auch wenn ich ReadlN mit irgendwelchen Zusatz-EndodingParameter verwende, immer dasselbe.
Wie kriege ich das auch unter MAC und Linux hin?
Anmerkung: Wenn ich ganze Streams versende, kann ich die auf Client-Seite auf allen OS empfangen, richtig dekodieren und mit deutschen Umlauten verwenden. Aber will hier nicht alles auf Streams umstellen.
Edit: Benutze Lazarus 1.26