Doch bei Kontroll-Anzeige der datei.txt mit dem Firefox sind die Umlaute verkrüppelt, Firefox erkennt also die UTF8 Codierung nicht.
Nein. Wenn die Textdatei keine BOM enthält, kann der Browser nicht wissen, was es ist. Das er beim lokalen Öffnen UTF-8 verwendet liegt an den Einstellungen des OS. Möglicherweise fügt aber Dein Webserver sogar Header mit einer falschen Kodierung bei, weil er es nicht anders weiß.
Lösung:
Sende vor der Textdatei einen header:
PHP:
header( 'Content-Type: text/plain; charset=utf-8' );
und/oder Apache: (.htaccess)
AddDefaultCharset UTF-8
IndexOptions +Charset=UTF-8