С чего вы взяли, что c: \ windows \ system32 не ваш текущий каталог? Свойство user.dir
явно должно быть «текущим рабочим каталогом пользователя».
Другими словами, если вы не запускаете Java из командной строки, c: \ windows \ system32 , вероятно, ваш CWD. То есть, если вы дважды щелкнете, чтобы запустить вашу программу, CWD вряд ли будет каталогом, из которого вы дважды щелкнете.
Редактировать : Похоже, что это верно только для старых версий Windows и / или Java.