Hallo, haben die ASCII Zeichen (0 bis 255) unterschiedliche Kodierungen abhängig von den Windows-Spracheinstellungen? Ich denke nicht. Was denkt Ihr? Gruß Pit
Google kaputt? http://de.wikipedia.org/wiki/American_Standard_Code_for_Information_Interchange Gruß Andreas
Nein, es gibt nur eine Kodierung für ASCII. Allerdings geht ASCII nur bis 127, d.h. es gibt keine Umlaute usw. Deswegen werden andere Zeichensätze wie ISO-8859 usw. verwendet, Windows hat da auch wieder eigene. Siehe http://de.wikipedia.org/wiki/ISO_8859
Windows verwendet durchaus unterschiedliche Codepages in Abhängigkeit von der Spracheinstellung. Die meisten "westlichen" Sprachen verwenden CP1251, was weitestgehend IS8859-1 entspricht. Wählt man aber Sprachen mit stark abweichenden Zeichenbedarf, wie z.B. polnisch oder gar Sprachen mit nichlateinischen Schriftsystemen (griechisch, russisch, georgisch etc.), dann wird eine andere Codepage genutzt. Die Codepage ist aber nur relevant für Programme, die intern mit 8-Bit-Zeichensätzen arbeiten; Windows selbst arbeitet mit 16-Bit-Unicode, und viele neuere Programme verwenden UTF-8, so daß hier keine Codepage nötig ist. Im von vielen Leuten hartnäckig falsch "DOS-Fenster" genannten Kommandozeilenfenster verwendet Windows auf "westlichen" Systemen eine komplett andere Codepage, und zwar eine, die den Zeichensatz des alten IBM PC nachbildet. Das ist CP437 bzw. leicht variiert CP850. Programme, die als Konsolanwendungen laufen, können die verwendete Codepage auch umschalten (mit SetConsoleOutputCP), aber das hat nur dann eine sinnvolle Auswirkung, wenn im Konsolenfenster eine geeignete Schriftart verwendet wird. Die standardmäßig aktiven Pixelfonts kennen nur eine Codepage und können daher Sonderzeichen aus anderen Codepages nicht darstellen. Als Schrifteinstellung für Konsolenfenster empfiehlt sich daher "Consoloas" oder "Lucida Console" - das sind Truetype-Fonts, die beliebige Codepages darstellen können. Der ASCII-Code übrigens ist immer der gleiche - die ersten 127 Zeichen aller Codepages und sonstigen Zeichencodierungssysteme sind i.d.R. identisch.
Pit schrieb: > haben die ASCII Zeichen (0 bis 255) ASCII geht nur von 0 bis 127. Alles was danach kommt ist der "erweiterte ASCII"-Zeichensatz und ist Regions abhaengig. So wirst du hier in D mit dem ASCII-Code 200 ein anderes Zeichen arhalten als in der Tuerkei, oder in Israel, oder in Spanien oder in Russland.
Ich habe jetzt auch noch mal nachgelesen, und ihr habt mal wieder recht! 1. ASCII von 0 bis 127 ist immer gleich. 2. Wenn man UTF8 nimmt ist man auf der sicheren Seite - wobei UTF8 im Bereich 0 bis 127 dem ASCII entspricht. 3. Google hilft weiter 4. Goto 1 Danke und Gruß Pit
>die als Konsolanwendungen laufen, können die verwendete Codepage auch >umschalten (mit SetConsoleOutputCP), aber das hat nur dann eine Oder mit "chcp <codepage>" in der Session die CP umschalten.
Jens G. schrieb: > Oder mit "chcp <codepage>" in der Session die CP umschalten. Kann man auch machen, oder
1 | mode con cp select=<codepage> |
Eleganter ist es aber, das in der Anwendung selbst zu machen, die nämlich weiß, was sie ausgeben will. An der Einschränkung durch die verwendete Schriftart ändert das aber nichts. "Rasterschriftart" ist nur für Codepage 850 bzw. mit kleinen Einschränkungen 437 verwendbar.
Rufus Τ. Firefly schrieb: > "Rasterschriftart" ist nur für Codepage 850 bzw. mit kleinen > Einschränkungen 437 verwendbar. Und die armen Schweine im Rest der Welt haben keine Rasterschriften? Ich habe für meine Steuerungen eine kyrillische Rasterschrift zur Verfügung gestellt, weil Russen das lieber lesen. Die Welt ist grösser und vielfältiger als so mancher sich das vorstellen kann. Georg
Georg schrieb: > Und die armen Schweine im Rest der Welt haben keine Rasterschriften? Haben sie, aber die sind halt nur auf den entsprechend lokalisierten Windows-Versionen verfügbar.
Die ganze Computer Technologie, resp die ersten Implementation fanden eben im Sprachraum mit lateinischen Buchstaben statt. Wir koennen froh sein, denn sie haetten koennen, resp in der Zukunft werden sein koennen auch auch in Japanischer oder Chinesischer Schrift sein. Und da kommt eben mehr als nur die Zeichen mit. Auch die Denkweise. Anstelle von "Enter" und "Cancel" koennten die Buttons auch "Mach mal weiter" und "Jetzt grad nicht" heissen, und auch dss bedeuten. Das laeuft dann unter Alphabet-Imperialismus ... :-)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.