Das muss sie ja immer...

... denn ohne den Header zu lesen und zu interpretieren, bekommt man ja keine Datei geöffnet. Die Frage lautet, was mache ich, wenn Inhalt und Extension nicht zusammenpassen? Soll man dann einen Dialog zeigen und den Vorgang abbrechen? Oder einfach an die passende Funktion weiterleiten? Denn wer PNG öffnen kann, kann auch JPG und vieles andere öffnen. Deshalb passiert in der Regel letzteres. Und das ist ein Schritt in die richtige Richtung, die Bedeutung der Extensions auflösen.