public static String getAppDataDir() {
        Logger.getLogger(OSBasics.class.getName()).entering(OSBasics.class.getName(), "getAppDataDir");
        File appDataDir;
        if (isMac()) {
            appDataDir = new File(System.getProperty("user.home"), "Library" + File.separatorChar + "Application Support"+ File.separatorChar + ResourceBundle.getBundle("booknaviger/resources/Application").getString("appTitle"));
        } else if (System.getProperty("os.name").toLowerCase().startsWith("windows")) {
            appDataDir = new File(System.getenv("APPDATA"), ResourceBundle.getBundle("booknaviger/resources/Application").getString("appTitle"));
        } else {
            appDataDir = new File(System.getProperty("user.home"), "." + ResourceBundle.getBundle("booknaviger/resources/Application").getString("appTitle"));
        }
        if (!appDataDir.exists()) {
            appDataDir.mkdirs();
        }
        Logger.getLogger(OSBasics.class.getName()).log(Level.CONFIG, "Appdir is \"{0}\"", appDataDir.toString());
        Logger.getLogger(OSBasics.class.getName()).exiting(OSBasics.class.getName(), "getAppDataDir", appDataDir.toString());
        return appDataDir.toString();
    }