Hallo Olaf,
Kann es sein, dass von vorne bis hinten alles utf-8 ist, aber das Ausgabegerät die Ausgabe als 8bit-Zeichensatz interpretiert und ausgibt? Das würde auch erklären, warum aus dem µ zwei Zeichen geworden sind.
Das wäre möglich, ist aber eher unwahrscheinlich. Java verwendet für IO standardmäßig den Systemzeichensatz. Das Problem dürfte eher sein, dass dieser eben nicht uft-8 ist und die Zeichen beim Einlesen als iso-* interpretiert werden. Ich würde also mal versuchen beim FileReader die Zeichenkodierung explizit anzugeben.
Grüße
Daniel