Dann siehst Du, ob am Anfang wirklich ein ganz normaler Leerschlag/Space steht, der mit TRIM entfernt werden sollte. Vielleicht ist es aber ein anderes Zeichen oder sogar Leerraum vor dem Fragezeichen als ein einziges Zeichen, auch bekannt als "FULLWIDTH QUESTION MARK" (im Gegensatz zum normalen ? oder QUESTION MARK).
Solange ein Zeichen im Windows Datei Explorer für einen Dateinamen eingetippt werden kann, ist es nicht INVALID.
Es gibt "nur" eine kleine Liste von wirklich nicht erlaubten Zeichen. All die Unicode-Zeichen sind zwar mühsam zu erreichen, aber nicht per Definition ungültig/invalid.
Validate wird beim Schreiben des Dateinamens angewendet, sofern im Format string als Anweisung enthalten. Ist eines der von dir als Zweifelsfall registrierten Zeichen ein ungültiges Zeichen für Dateinamen?
Da du nicht zeigst, wie du
anwendest, ist es schwer zu beurteilen.
Und so wie ich die Anzeige von Babelstone beurteile, hast du kein normales Leerzeichen und Fragezeichen, sondern die breitere Abart FULLWIDTH QUESTION MARK
Nein. Erklärung siehe oben.
Nur < > ? " : | \ / * sind invalid Zeichen welche mit VALIDATE erkannt werden.
Nein, weil in FULLWIDTH QUESTION MARK kein Leerzeichen vorhanden ist welches getrimmt/entfernt werden könnte.
Bist Du ganz sicher, dass im Original Dateinamen noch ein SPACE vor dem FULLWIDTH QUESTION MARK steht? Dieses SPACE müsste bei richtiger Anwendung mit TRIM erkannt werden.
Nachtrag:
Bei mir sieht das so (nachgestellt) aus:
Da steht KEIN Space vor dem FULLWIDTH QUESTION MARK und der Abstand im Vergleich zu 01 in der dritten Zeile vor "Love like this" sieht in etwa gleich aus wie in Deinem ursprünglichen Screenshot
(? etwa in der Mitte zwischen 0 und 1)
Wenn ein SPACE vor dem FULLWIDTH QUESTION MARK stehen würde, sähe das so aus:
Das FULLWIDTH QUESTION MARK in der dritten Zeile steht direkt über der 1 in der vierten Zeile.