ejemplo chooser archivos abrir java user-interface javafx-2 filechooser

chooser - javafx save file to directory



JavaFX FileChooser: ¿cómo configurar filtros de archivos? (3)

Quiero configurar filtros de archivos en un JavaFX FileChooser pero no pude encontrar la manera de hacerlo.

Mi código:

FileChooser fc = new FileChooser(); fc.setTitle("My File Chooser"); File f = fc.showOpenDialog(primaryStage); System.out.println(f);


Actualización para el filtro de extensiones múltiples JavaFX plus:

FileChooser fc = new FileChooser(); FileChooser.ExtensionFilter fileExtensions = new FileChooser.ExtensionFilter( "Web pages", "*.tpl", "*.html", "*.htm"); fc.getExtensionFilters().add(fileExtensions);


Así es como puedes hacerlo.

FileChooser fc=new FileChooser(); FileChooser.ExtensionFilter fileExtensions =new FileChooser.ExtensionFilter("music files","*.mp3", "*.mp4"); fc.getExtensionFilters().add(fileExtensions); List<File> selectedFiles=fc.showOpenMultipleDialog(null); if(selectedFiles!=null){ for(int i=0;i<selectedFiles.size();i++){ System.out.println(selectedFiles.get(i).toString()); } }


Podrías hacerlo:

FileChooser.ExtensionFilter extFilter = new FileChooser.ExtensionFilter("TXT files (*.txt)", "*.txt"); chooser.getExtensionFilters().add(extFilter);

Aquí hay un ejemplo simple:

public class ExtensionFilterExample extends Application { public static void main(String[] args) { launch(args); } @Override public void start(final Stage primaryStage) { primaryStage.setTitle("Extension Filter Example"); final Label fileLabel = new Label(); Button btn = new Button("Open FileChooser"); btn.setOnAction(new EventHandler<ActionEvent>() { @Override public void handle(ActionEvent event) { FileChooser fileChooser = new FileChooser(); // Set extension filter FileChooser.ExtensionFilter extFilter = new FileChooser.ExtensionFilter("TEXT files (*.txt)", "*.txt"); fileChooser.getExtensionFilters().add(extFilter); // Show open file dialog File file = fileChooser.showOpenDialog(primaryStage); if (file != null) { fileLabel.setText(file.getPath()); } } }); VBox vBox = new VBox(30); vBox.getChildren().addAll(fileLabel, btn); vBox.setAlignment(Pos.BASELINE_CENTER); StackPane root = new StackPane(); root.getChildren().add(vBox); primaryStage.setScene(new Scene(root, 300, 250)); primaryStage.show(); } }