Java Swingライブラリにファイルブラウザウィンドウを開き、ユーザーがファイルを選択できるようにする何らかのJツールがあるかどうか疑問に思っていました。その後、ファイルの出力は選択したファイルの絶対パス。
前もって感謝します、
JFileChooser クラスを使用して、 この例 を確認できます。
最終的に、必要なことを正確に実行する次の簡単なコードを使用しました。
final JFileChooser fc = new JFileChooser();
fc.showOpenDialog(this);
try {
// Open an input stream
Scanner reader = new Scanner(fc.getSelectedFile());
}
次の例では、ファイルチューザーを作成し、最初にファイルを開くダイアログとして表示し、次にファイルを保存するダイアログとして表示します。
String filename = File.separator+"tmp";
JFileChooser fc = new JFileChooser(new File(filename));
// Show open dialog; this method does not return until the dialog is closed
fc.showOpenDialog(frame);
File selFile = fc.getSelectedFile();
// Show save dialog; this method does not return until the dialog is closed
fc.showSaveDialog(frame);
selFile = fc.getSelectedFile();
次に、ファイル選択ダイアログを作成および表示する2つのボタンを作成する、より複雑な例を示します。
// This action creates and shows a modal open-file dialog.
public class OpenFileAction extends AbstractAction {
JFrame frame;
JFileChooser chooser;
OpenFileAction(JFrame frame, JFileChooser chooser) {
super("Open...");
this.chooser = chooser;
this.frame = frame;
}
public void actionPerformed(ActionEvent evt) {
// Show dialog; this method does not return until dialog is closed
chooser.showOpenDialog(frame);
// Get the selected file
File file = chooser.getSelectedFile();
}
};
// This action creates and shows a modal save-file dialog.
public class SaveFileAction extends AbstractAction {
JFileChooser chooser;
JFrame frame;
SaveFileAction(JFrame frame, JFileChooser chooser) {
super("Save As...");
this.chooser = chooser;
this.frame = frame;
}
public void actionPerformed(ActionEvent evt) {
// Show dialog; this method does not return until dialog is closed
chooser.showSaveDialog(frame);
// Get the selected file
File file = chooser.getSelectedFile();
}
};
WebStartおよび新しい6u10プラグインでは、セキュリティ権限がなくてもFileOpenServiceを使用できます。明らかな理由により、ファイルパスではなく、ファイルの内容のみを取得します。