Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (GNU/Linux, *NIX, *BSD und Co) » DOS-Zeichensatz auf der Linux-Konsole verwenden?

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
09.08.2015, 00:49 Uhr
Yadgar



Hi(gh)!

Ich spiele mit dem Gedanken, in C++ ASCII-Animationen unter Linux zu programmieren... angesichts der üppigen Ausstattung des IBM 850 (bzw. DOS Latin 1)-Zeichensatzes mit Grafik-Sonderzeichen frage ich mich jetzt: wie komme ich auf der Linux-Konsole (die Animationen sollen vorläufig ausschließlich auf der Konsole laufen) an diesen Zeichensatz?

Bis bald im Khyberspace!

Yadgar
--
Flagmaker - ein Programmier-Blog

Dieser Post wurde am 09.08.2015 um 00:50 Uhr von Yadgar editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
09.08.2015, 18:26 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


Hi,

die cp850 zeichen sind alle auch als utf-8 zeichen definiert, d.h auf jeder modernen konsole sollten per utf-8 die zeichen darstellbar sein:

https://de.wikipedia.org/wiki/Codepage_850
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
09.08.2015, 21:29 Uhr
~Yadgar
Gast


Hi(gh)!


Zitat von FloSoft:
Hi,

die cp850 zeichen sind alle auch als utf-8 zeichen definiert, d.h auf jeder modernen konsole sollten per utf-8 die zeichen darstellbar sein:

https://de.wikipedia.org/wiki/Codepage_850




Funktioniert leider nicht so, wie ich mir das gedacht habe - dieser Code:

wchar_t ch = L'\x2591';

cout << ch << endl;

führt zur Ausgabe:

9617

und nicht etwa das hellschraffierte Rechteckt aus DOS Latin-1! Und das, obwohl ich ausdrücklich mit -std=c++11 kompiliert habe...

Bis bald im Khyberspace!

Yadgar

Dieser Post wurde am 11.08.2015 um 17:14 Uhr von FloSoft editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
09.08.2015, 21:36 Uhr
Yadgar




Zitat von ~Yadgar:

Funktioniert leider nicht so, wie ich mir das gedacht habe - dieser Code:

wchar_t ch = L'\x2591';

cout << ch << endl;

führt zur Ausgabe:

9617

und nicht etwa das hellschraffierte Rechteckt aus DOS Latin-1! Und das, obwohl ich ausdrücklich mit -std=c++11 kompiliert habe...



Mit wcout statt cout wird stattdessen ein Fragezeichen ausgegeben - das ist aber auch nicht das, was ich wollte! Was mache ich falsch?

Bis bald im Khyberspace!

Yadgar
--
Flagmaker - ein Programmier-Blog
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
11.08.2015, 17:19 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


ah hab gerade mal nachgelesen - du musst auch auf ein utf8-locale schalten:


C++:
#include <iostream>

using namespace std;

int main(void)
{
std::wcout.sync_with_stdio(false);
std::wcout.imbue(std::locale("de_DE.utf8"));
wchar_t ch = L'\x2524';
wcout << ch << endl;
}



gibt z.b bei mir


Zitat:





aus
--
class God : public ChuckNorris { };

Dieser Post wurde am 11.08.2015 um 17:19 Uhr von FloSoft editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
12.08.2015, 02:06 Uhr
Yadgar



Hi(gh)!


Zitat von FloSoft:
ah hab gerade mal nachgelesen - du musst auch auf ein utf8-locale schalten:


C++:
#include <iostream>

using namespace std;

int main(void)
{
std::wcout.sync_with_stdio(false);
std::wcout.imbue(std::locale("de_DE.utf8"));
wchar_t ch = L'\x2524';
wcout << ch << endl;
}



gibt z.b bei mir


Zitat:





aus


Ja, das funktioniert! Danke für den Tipp!

. o O ( jetzt kann ich meinen Animationen ja sogar Untertitel auf Georgisch hinzufügen! Cooooooool!!! )

Bis bald im Khyberspace!

Yadgar Gurchidost
--
Flagmaker - ein Programmier-Blog
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (GNU/Linux, *NIX, *BSD und Co) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: