Sign in Join
Wiki copytemporary

convert charset for console/de: what changed

Revision 1 to 2. Removed lines have a minus sign; added lines have a plus sign.

OldNewLine
1-│ **Deutsch (de)** │
2-****
3-Zurück zur [[Console/de|Konsolenseite]].
4-
5-
6-# Den Zeichensatz für die Ausgabe an der Konsole anpassen
1+Zurück zur [[Console/de|Konsolenseite]].\
72
8-Dieser Artikel beschäftigt sich mit der Windowsprogrammierung.
9-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.
10-Unter Linux (Ubuntu) ist eine Konvertierung des Zeichensatzes nicht notwendig.
3+=Den Zeichensatz für die Ausgabe an der Konsole anpassen= Dieser Artikel beschäftigt sich mit der Windowsprogrammierung.\
4+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.\
5+Unter Linux (Ubuntu) ist eine Konvertierung des Zeichensatzes nicht notwendig.\
116
12-```
7+``` pascal
138program project1;
14-
15- {$mode objfpc}{$H+}
16- {$IMPLICITEXCEPTIONS OFF}
17-
18- uses
19- Windows;
20-
21- var
22- strText: string;
23-
24- // Diese Funktion übersetzt den Inhalt eines Ansistrings
25- // in den Zeichensatz der Konsole
26- function funAnsiZuOEM(strUebergabe: string): string;
27- begin
28- // Ab Lazarus 1.2.0 muss der folgende Absatz eingefügt werden:
29- strUebergabe := Utf8ToAnsi(strUebergabe);
30-
31- // Bis Lazarus 1.0.14 genügte dieser Teil:
32- strUebergabe := strUebergabe + #0;
33- CharToOEM(PChar(strUebergabe), @strUebergabe[1]);
34- Delete(strUebergabe, Length(strUebergabe), 1);
35- Result := strUebergabe;
36- end;
37-
38- begin
39-
40- strText := 'Rosé und Tölt';
41- writeln('Ausgabe: ' + funAnsiZuOEM(strText));
9+
10+{$mode objfpc}{$H+}
11+{$IMPLICITEXCEPTIONS OFF}
12+
13+uses
14+ Windows;
15+
16+var
17+ strText: string;
18+
19+ // Diese Funktion übersetzt den Inhalt eines Ansistrings
20+ // in den Zeichensatz der Konsole
21+ function funAnsiZuOEM(strUebergabe: string): string;
22+ begin
23+ // Ab Lazarus 1.2.0 muss der folgende Absatz eingefügt werden:
24+ strUebergabe := Utf8ToAnsi(strUebergabe);
4225
43- end.
26+ // Bis Lazarus 1.0.14 genügte dieser Teil:
27+ strUebergabe := strUebergabe + #0;
28+ CharToOEM(PChar(strUebergabe), @strUebergabe[1]);
29+ Delete(strUebergabe, Length(strUebergabe), 1);
30+ Result := strUebergabe;
31+ end;
32+
33+begin
34+
35+ strText := 'Rosé und Tölt';
36+ writeln('Ausgabe: ' + funAnsiZuOEM(strText));
37+
38+end.
4439```
4540
4641---
47-*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](/wiki-contact).*
42+*From the Free Pascal wiki, page "convert charset for console/de", as it stood on 2020-02-12 after a change by Trev, out of the wiki's dump of 2024-05-26. 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](/wiki-contact).*

Back to history