In all your catch blocks call printStackTrace() to get full info on the exact error.
Use System Properties to get the user's home or working dir, and use that for your file(s). It works appropriately in all supported OSs https://docs.oracle.com/javase/tutorial/essential/environment/sysprop.html