Sign in Join
Wiki copytemporary

Revision 1 of 2, by WikiArchive on 11-4-2026. The page as it is now.

convert charset for console/de

│ Deutsch (de) │


Zurück zur Konsolenseite.

Den Zeichensatz für die Ausgabe an der Konsole anpassen

Dieser Artikel beschäftigt sich mit der Windowsprogrammierung.
Falls Ihr Konsolenprogramm unter Windows Ansi-Text mit Umlauten und Sonderzeichen korrekt ausgeben soll, dann müssen Sie den Ansi-Text in den OEM-Zeichensatz konvertieren.
Unter Linux (Ubuntu) ist eine Konvertierung des Zeichensatzes nicht notwendig.

pascal
program project1;
    
    {$mode objfpc}{$H+}
    {$IMPLICITEXCEPTIONS OFF}
    
    uses
      Windows;
    
    var
      strText: string;
    
      // Diese Funktion übersetzt den Inhalt eines Ansistrings
      // in den Zeichensatz der Konsole
      function funAnsiZuOEM(strUebergabe: string): string;
      begin
        // Ab Lazarus 1.2.0 muss der folgende Absatz eingefügt werden:
        strUebergabe := Utf8ToAnsi(strUebergabe);
        
        // Bis Lazarus 1.0.14 genügte dieser Teil:
        strUebergabe := strUebergabe + #0;
        CharToOEM(PChar(strUebergabe), @strUebergabe[1]);
        Delete(strUebergabe, Length(strUebergabe), 1);
        Result := strUebergabe;
      end;
    
    begin
    
      strText := 'Rosé und Tölt';
      writeln('Ausgabe: ' + funAnsiZuOEM(strText));
    
    end.

From the Free Pascal wiki, page "convert charset for console/de", as the Internet Archive kept it on 2025-03-27. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.