Bisher hat keiner von Euch darauf hingewiesen daß man dem einfach löst indem man 'Dateinamen' generell in Gänsefüßchen packt vor dem verarbeiten.
Nette Idee... und wenn der Name der Datei eben jene Gänsefüßchen enthält? Egal ob einfach oder doppelte, es sind zulässige Zeichen für Dateinamen und einen solchen Dateinamen zu erzeugen ist keine Sache. Macht nur keiner.
Dreh es wie du willst, in Dateinamen sind einige Zeichen zwar zulässig aber ihre Verwendung eine schlechte Idee. Leerzeichen gehören dazu und das war lange Zeit aus gutem Grund Konsens.