Keine Ahnung was shmia's Antworten sollen, sie sind jedenfalls falsch. Umlaute sind
in keinem Fall ein Teil von
ASCII!
ASCII sind alle Zeichencodes von 0..127 womit du auch deine Antwort hast. Prüfe ob ein Zeichen mit Code größer 127 in der Datei enthalten ist. Ob dieses oder jenes drin ist, kann man nicht unterscheiden:
- ANSI hat 256 Zeichen und ASCII nur 128
- ANSI und ASCII sind auch kodierungsunabhängig für den ASCII-Bereich, den sie sich teilen, identisch.
- Nähmen wir mal an du meinst EASCII mit ANSI vergleichen: dann kommt es immer auf die Kodierung an, also darauf wie du es anzeigst (Kodierung ist eine Interpretationssache deines Programms!). Logischerweise haben die Zeichen alle noch Werte zwischen 0..255. Wie willst du die denn unterscheiden? Vielleicht mit OCR um herauszubekommen wie unterschiedliche Programme den jeweiligen Code ziwschen 0..255 anzeigen?
Du siehst, die Kodierung ist absolut deine Implementationssache und nichts was dir hier jemand irgendwie vorschreiben kann oder will. himitsu hat ganz recht mit seiner Empfehlung, entweder speicherst du einen Marker mit, oder du nimmst gleich einen der
Unicode-Standards um deine Zeichen zu kodieren und bist dir damit sicher, daß sie von jedem (also auch deinem) Programm eineindeutig interpretiert werden.