Normalmente si utilizza l'istruzione
String userHome = System.getProperty( "user.home" );
per ottenere la home directory dell'utente su qualsiasi piattaforma. Consulta la documentazione del metodo per getProperty per vedere cos'altro puoi ottenere.
Potrebbero esserci problemi di accesso che potresti voler evitare utilizzando questa soluzione alternativa (Utilizzo di un file di criteri di sicurezza)
Per i sistemi simili a UNIX potresti voler eseguire "echo ~username
" usando la shell (quindi usa Runtime.exec()
per eseguire {"/bin/sh", "-c", "echo ~username"}
).
Prova questo su Java:
System.out.println("OS: " + System.getProperty("os.name") + ", USER DIRECTORY: " + System.getProperty("user.home"));