Se l'errore èOriginariamente inviato da jabjoint
quello che è assurdo è che la stringa è giusta compare per bello intero solo il file path
Caratteri non validi nel percorso
vuol dire che, come ti ho detto, ci sono dei caratteri "non visibili" nella stringa. E se non li vedi, ti "sembra" che la stringa sia esatta, ma non lo è.
Ora, se fermi il programma nella riga in cui cerchi di aprire il file e controlli il contenuto della variabile, byte per byte, ti accorgerai del problema.