A forrást nem teszed fel? Ha már 5 sor?
> NoSuchFileException: K?N_202410_2411111223.xml
Szerintem a parancssorban megkapott paramétert más encoding szerint értelmezi, mint amiben valójában jön. Például azt hiszi, hogy a paraméternek is UFT-8-ban kell jönni, de a Windows valami másban küldi. A paraméter beolvasása Java Stringbe a programod indítása előtt megtörténik, tehát ezzel nem tud a programod semmit se csinálni, ennek jónak kell lenni eleve, különben nem fogja tudni betölteni a fájlt, az a hiba lesz, amit írtál.
Ha biztosra akarsz menni, akkor a bináris ábrázolását a bemeneti paraméternek visszaírod (azért nem a stringet, mert azt meg a terminál is elronthatja, ha félre van konfigolva) a program futása elején, és akkor kiderül, hogy tényleg ez-e a probléma. Belül a Java szerintem már a Windowsnak az U16 API-ját használja, ha egyszer jól van a fájlnév a JVM-ben, akkor már meg fogja tudni nyitni. De az ördög nem alszik...
A megoldást persze nem tudom, nem találkoztam még ilyennel, hogy a parancssori paramétert ne jól olvasta volna ki a Java. A saját programjainkban mindig explicit megadjuk, hogy melyik fájlnak mi az enkódolása, és sose építünk a konfigurált beállításokra. A paraméterek meg eddig mindig jól jöttek, bár tény, hogy többnyire nem is használunk ékezetes fájlneveket, lehet, hogy ki se derült volna, ha ilyen van.