2017-04-19 5 views
0

私はプログラムに必要なファイルを保存したかったのですが、ユーザーはファイルを保存する場所を決めなければなりません...しかし、プログラムを起動するたびにパスを選択する必要がないので、ファイルを見つけるために行くパス、どのように?JAVA |ファイルパスを保存する

私はユーザーにJFileChooserでファイルを選択させました。

JButton jButton = new JButton(); 
    JFileChooser jFileChooser = new JFileChooser(); 
    jFileChooser.setCurrentDirectory(new File(System.getProperty("user.home"))); 
    jFileChooser.setDialogTitle("Choose your Path!"); 
    jFileChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); 
    if(jFileChooser.showOpenDialog(jButton) == JFileChooser.APPROVE_OPTION){ 

    } 
    path = jFileChooser.getSelectedFile().getAbsolutePath(); 
    pathBind = jFileChooser.getSelectedFile().getAbsolutePath() + "/binds.jar"; 

    bindFile = new File(pathBind); 

さらに詳しい情報が必要な場合は、私はそれを与えるでしょう...私は何かを忘れた場合は、ごめんなさい^^。

+0

あなたは別のファイルにディレクトリを保存することができます。そのファイルをユーザーのディレクトリに保存します。 'System.getProperty(" user.home ")'を使ってユーザのホームディレクトリを選択してください。 –

+0

私はそう考えていましたが、プログラムはそのファイルのパスを覚えていませんか、間違っていますか? //編集:気にしないで、やってみよう。ありがとうございました。 :) – ZuckerKuchen

答えて

0

情報の種類は、おそらくあなたがPreferencesクラスを使用してアクセスするユーザーの好みに属し:

private static final String LAST_SAVE_DIR_PREFS_KEY = "last-save-dir"; 

private static final Preferences PREFERENCES = 
    Preferences.userNodeForPackage(MyUserInterface.class); 

// ... 

    String saveDir = PREFERENCES.get(LAST_SAVE_DIR_PREFS_KEY, 
     System.getProperty("user.home")); 
    jFileChooser.setSelectedFile(new File(saveDir)); 

    jFileChooser.setDialogTitle("Choose your Path!"); 
    jFileChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); 
    if (jFileChooser.showOpenDialog(jButton) == JFileChooser.APPROVE_OPTION) { 

     PREFERENCES.put(LAST_SAVE_DIR_PREFS_KEY, 
      jFileChooser.getSelectedFile().toString()); 

     // ... 
    } 
関連する問題